专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

Tomcat7源码调试

从哪里下载tomcat7的源码?

当然是官网啦:tomcat.apache.org/download-70…

45_1.png

准备工作

增加pom.xml

直接下载下来的源码 需要自己导入依赖Jar包,配置编译路径和VM参数,你可以自己写ant,gradle都可以,我用的是maven。在项目根路径下面新建pom.xml文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat7</artifactId>
    <name>tomcat7</name>
    <version>7.0</version>
    <build>
        <finalName>tomcat7</finalName>
        <sourceDirectory>java</sourceDirectory>

        <resources>
            <resource>
                <directory>java</directory>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>test</directory>
            </testResource>
        </testResources>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.6</version>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.6.5</version>
        </dependency>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <version>3.4</version>
        </dependency>
        <dependency>
            <groupId>wsdl4j</groupId>
            <artifactId>wsdl4j</artifactId>
            <version>1.6.2</version>
        </dependency>
        <dependency>
            <groupId>javax.xml</groupId>
            <artifactId>jaxrpc</artifactId>
            <version>1.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.eclipse.jdt.core.compiler/ecj -->
        <dependency>
            <groupId>org.eclipse.jdt.core.compiler</groupId>
            <artifactId>ecj</artifactId>
            <version>4.6.1</version>
        </dependency>
    </dependencies>
</project>

值得注意的是下图中标红的eclipse jdt的依赖版本,自所以用4.6.1而不是4.4.X版本(可能其他的网文都是比较低的版本)

45_2.png是因为我本机的java version是1.8,如果jdt版本过低 则下图中的源码位置会报错

45_3.png

导入idea

以maven的方式导入idea 不作赘述

配置VM参数

-Dcatalina.home=$TOMCAT_HOME 
-Dcatalina.base=$TOMCAT_HOME 
-Djava.endorsed.dirs=$TOMCAT_HOME/endorsed 
-Djava.io.tmpdir=$TOMCAT_HOME/temp -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.util.logging.config.file=$TOMCAT_HOME/conf/logging.properties

$TOMCAT_HOME是工程的根路径

启动调试

至此 就可以启动Bootstrap的main方法 进行调试了。

文章永久链接:https://tech.souyunku.com/31491

未经允许不得转载:搜云库技术团队 » Tomcat7源码调试

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们