tomcat源码阅读(一)——环境搭建

10 篇文章 0 订阅
10 篇文章 0 订阅

欢迎持续关注阅读,一起学习,共同交流(477819525君羊)。


一、工具准备 

需要SVN、Maven、JDK、Eclipse、M2Eclipse 

二、下载源码及发布包 

源码在: 
http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_27/ 

发布包在: 
http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.27/bin/ 

说明:下载发布包这个步骤是可选的,好处是免得从源码再自行构建,节省时间;另外发布包里的配置文件等,接下来可以直接拿来用,很方便 

三、整理目录 

前面下载得到了源码和发布包,现在要把它们放到同一个目录里,再整理一下,方便后面把它转化成eclipse工程,毕竟后续读源码,以及调试,都要在eclipse里完成 

新建一个单独的目录,叫tomcat7.0.27,然后把刚才下载的源码和发布包都放进去。源码目录重命名为code;发布包重命名为launch 

得到的目录结构见下图: 

 

一会就会把这个目录导入eclipse,变成可运行,可调试的eclipse工程 

四、转换成maven工程 

将附件中的pom.xml放入目录,与code、launch目录平行 

得到的目录结构见下图: 

 

说明:这也不是必须的,只是为了方便 

五、导入eclipse 

 

 

导入成功以后,eclipse里的工程目录结构如下图: 

 

接下来就可以在eclipse里运行和调试tomcat了,也可以随意修改源代码,或者自己添加测试用例 

六、启动tomcat 

tomcat启动入口类是:org.apache.catalina.startup.Bootstrap 

平时我们用发布包启动tomcat一般是用脚本startup.bat或者startup.sh,其实就是在脚本中先处理启动参数和系统变量,然后调用这个入口类的main()方法 

所以在eclipse里启动,我们也是直接执行这个类的main()方法,只是模拟脚本,设置一下启动参数和系统变量 

方法1: 

在VM arguments中,拷贝以下参数 

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

如图: 

 

方法2: 

将附件中的启动脚本,拷贝到工程目录下,结构如下图: 

 

然后直接在start-tomcat7.launch上右键点击,run就可以 

启动效果如下图: 

 

眼熟,和普通的脚本启动,以及启动嵌入式tomcat的信息都是一样的 

最后用浏览器访问:http://localhost:8080/examples/ 

七、tomcat7核心架构 



包名作用
javax.*各种JSR的API,如jsp、servlet、el等
org.apache.catalinatomcat自身架构
org.apache.coyotehttp、ajp协议实现
org.apache.elEL规范实现
org.apache.jasperJSP规范实现
org.apche.juli日志
org.apache.namingJNDI实现
org.apache.tomcat工具包、XML解析器等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值