设为首页 收藏本站
查看: 863|回复: 0

[经验分享] Building Tomcat 6

[复制链接]

尚未签到

发表于 2017-1-16 10:50:29 | 显示全部楼层 |阅读模式
1.安装TortoiseSVN
http://tortoisesvn.net/

2.利用TortoiseSVN下载Tomcat6源码

DSC0000.png

exoprt http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_26
(我选择的版本是TOMCAT_6_0_26)

DSC0001.png


3.编译Tomcat6源码
Tomcat是用ant构建的,首先要安装ant,这里不介绍ant的安装了
从Tomcat的源代码文件找到build.properties.default文件,把名字改为build.properties,打开这个文件找到下面这行:
base.path=/usr/share/java
这个路径是用来存放即将下载的文件的目录,由于我用的是Windows,所以改为适合我的目录:
base.path=D:/Workspace/JEE/workspace/TOMCAT_6_0_26/share

接着在D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src 目录下打开命令行窗口,执行下面命令:

ant download

DSC0002.png

TOMCAT_6_0_26这个版本目前下载正常,较老版本一些下载链接可能会失效,需要在 build.properties文件中改链接。
都下载了如下文件:

DSC0003.png

下载完后直接执行 ant 命令就开始编译了

DSC0004.png

编译完成后会产生一个output目录,到这个目录(D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src\output\build)下看看,怎么样?我们见到了熟悉的Tomcat目录结构,如下图:

DSC0005.png


4.将Tomcat源码导入Eclipse
打开Eclipse,新建一个Java项目,然后点击“Next”按钮,在“Use default location”中填入D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src
Project name: TOMCAT_6_0_26
然后一路next

DSC0006.png

接着我们会看到Eclipse拒绝编译该项目,不要着急,这是由于Eclipse找不到该项目指定的库文件。右击该项目弹出菜单选择 "Build Path" -> "Configure Build Path..." -> "Libraries"
Remove下面两项:
ANT_HOME/lib/ant.jar
TOMCAT_LIBS_BASE/...

DSC0007.png

接着添加如下依赖(Add External JARs...):
(也可以参考:http://tomcat.apache.org/tomcat-6.0-doc/building.html#Building_with_Eclipse)
ant.jar (在你电脑ant安装目录下lib目录下可以找到)
org.eclipse.jdt.core_3.3.1.v_780_R33x.jar (刚才下载的目录D:\Workspace\JEE\workspace\TOMCAT_6_0_26\share\eclipse\plugins 可以找到)
junit4.7 (这个原来有,我给换成4.7的了)

5.在Eclipse中运行Tomcat
找到org.apache.catalina.startup.Bootstrap
右键 Run as -> Run Configurations...
在Program参数窗口和VM参数窗口分别填入
start

-Dcatalina.home="D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src\output\build"

DSC0008.png

Debug同理,不解释,看图:

DSC0009.png

从org.apache.jasper.compiler.Compiler类的generateJava()方法开始Debug更好,debug启动Tomcat,然后浏览器输入地址并回车,就会看到如下Debug视图:

DSC00010.png

注意:generateJava方法是将jsp编译成java class,这个行为只有第一次请求时才会调用,将你再次发送请求时你将看不到这个Debug视图了,解决办法是到Tomcat的 build\work\Catalina\目录删除对应jsp的类文件

接下来,带个好心情,读源码吧,祝快乐

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-329171-1-1.html 上篇帖子: tomcat部署记录tip 下篇帖子: Tomcat源代码分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表