Tomcat源码学习之源码调试环境搭建

Tomcat源码学习之源码调试环境搭建

目录

准备工作
  • 源码下载
    Tomcat8.5源码:http://tomcat.apache.org/download-80.cgi#8.5.20

  • 开发工具
    Intellij idea

  • 思路
    使idea运行编译后的tomcat,使用maven编译容易报错,选择使用ant编译,将ant编译后的tomcat配置到idea的java application调试,此时main class复选框关联不了tomcat的启动类BootStrap,添加项目的maven配置,使main class选框关联启动类。


编译源码

源码压缩包解压之后得到apache-tomcat-8.5.20-src文件夹,使用Idea打开该文件夹。

idea集成了ant build插件,右侧选择AntBuild工具栏,点击添加,选择项目文件build.xml,点击AntBuild的执行键等待编译完成。
ant编译

编译完成后,项目目录中生成了out文件夹,out文件夹下面的build文件夹就是编译后的tomcat,将build文件夹拷贝至apache-tomcat-8.5.20-src目录下,可以将build文件夹重命名,这里命名为catalina


源文件的maven配置
<?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>Tomcat8.5</artifactId>
    <name>Tomcat8.5</name>
    <version>8.5</version>

    <build>
        <finalName>Tomcat8.5</finalName>
        <sourceDirectory>java</sourceDirectory>
        <!--<testSourceDirectory>test</testSourceDirectory>-->
        <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.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <version>3.4</version>
        </dependency>
        <dependency>
            <groupId>ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.7.0</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>
        <dependency>
            <groupId>org.eclipse.jdt.core.compiler</groupId>
            <artifactId>ecj</artifactId>
            <version>4.5.1</version>
        </dependency>
    </dependencies>
</project>

配置idea调试tomcat

idea调试在run菜单下配置,依次打开run->edit configurations,添加java application,填入配置。Name随便输入,main class从关联中选择org.apache.catalina.startup.Bootstrap,VM options中配置编译后的tomcat作为catalina_home,根据自己创建的目录配置。

vm options

-Dcatalina.home="D:\WorkStation\FramworkSrc\apache-tomcat-8.5.20-src\apache-tomcat-8.5.20-src\catalina"

调试配置


启动调试

在默认端口8080未被占用的情况下,点击对应的调试按钮后进行调试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值