java 如何搭建tomcat源码的调试环境?

尝试搭建eclipse中tomcat9的调试环境。

参考:http://blog.csdn.net/Rongbo_J/article/details/50446262

 

一、下载tomcat源码

下载Source Code Distributions

https://tomcat.apache.org/download-90.cgi

下载完成后,解压备用。

二、环境搭建

(1)新建java工程

原则上建立maven工程也可以,我尝试了一次,结果遇到了很多问题(比如类的路径),所以不推荐。

直接新建基础的java工程即可,个人命名为apache-tomcat9-source:

111

(2)导入tomcat源码

1.在工程上右键 -> Import -> General -> File System -> Next

111

2.点击Browser -> 找到tomcat源码解压路径 -> 选择java、test、conf、webapps目录(注意不需要勾选examples目录)-> Finish导入。

111

3.在java和test目录上点击右键 -> Build Path -> Use As Source Folder將这两个目录设为源码目录 -> 删除工程中原有的src目录。

111

(3)解决依赖问题

1.导入以下依赖:

111

前5项依赖均可在http://mvnrepository.com/获取。Junit4导入eclipse自带的测试环境即可。

2.缺少CookieFilter.java

test/util目录下缺少一个名为CookieFilter的类,我们直接新建此类即可。

CookieFilter.java

除此之外,test/org.apache/coyote/http2目录下还还缺少一个trailers.ResponseTrailers类,我找了半天都没有找到,只能放弃(猜测与tomcat的http2功能有关,平时似乎用不到)。

(4)寻找入口类,进行环境测试

入口类名为Bootstrap,在java/org.apache/catalina/startup目录下,直接右键Run As Java Application即可。如果以上步骤没有出错,可以看见控制台输出tomcat的启动日志。

访问http://localhost:8080/,可以看到熟悉的tomcat界面:

111

(5)调试

找到Bootstrap.java中的main方法,在debug模式中打上断点,就可以对tomcat的启动过程进行研究了。

三、总结

记录一下。

发表评论

电子邮件地址不会被公开。 必填项已用*标注