Tomcat 源代码编译
一直使用webloigc websphere,但一直停留在应用的层面;没有对中间件的运行机制有深刻的认识。所以萌发了阅读源代码的想法。所以从基础做起,先下个Tomcat 看看。
第一步: 下载代码
以下两个途径都可以
http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/
http://tomcat.apache.org/download-70.cgi
第二步:源代码编译
如果嫌内容啰嗦,可以直接参考 Tomcat 官方 编译步骤。
http://tomcat.apache.org/tomcat-7.0-doc/building.html#Building_with_Eclipse
1)解压 源代码包
E:\Tomcat_Projcet\apache-tomcat-7.0.37-src
2)创建basepath目录
E:\Tomcat_Projcet\basepath
3)修改 编译配置文件 build.properties
a)设置 base.path=E:/Tomcat_Projcet/basepath (必须是 / )
b)由于我用的是公司网路,所以必须配置代理。如果不用代理,此步跳过。
# ----- Proxy setup -----
# Uncomment if using a proxy server.
proxy.host=************.com
proxy.port=80
proxy.use=on
4)编译E:\Tomcat_Projcet\apache-tomcat-7.0.37-src 目录
a) ant 会默认调用 build.xml 文件
b) 查看 build.xml中 Main targets 的目标列表 ,确认其包含 ide-eclipse targe
E:\Tomcat_Projcet\apache-tomcat-7.0.37-src>ant -p
c) ant ide-eclipse
d) 结果
ant 编译后会分别在如下两个目录生成或下载相应的文件
E:\Tomcat_Projcet\basepath
E:\Tomcat_Projcet\apache-tomcat-7.0.37-src\output
至此编译工作完成。
第三步:导入源代码到Eclipse 工程
1) 创建一个空的 Java Project
2) 在新工程目录下创建lib 目录
拷贝 如下jar 包到lib 目录下,版本号无所谓;同时把四个jar 包加入到新工程中。具体操作略。
ant.jar
jaxrpc.jar
org.eclipse.jdt.core_3.8.1.v20120531-0637.jar
wsdl4j-1.5.1.jar
3)导入源代码
a)把源代码下的 java ,test 两个目录 导入到工程中 import-> file system
b) 将 java test 两个目录设置成 source folder
c) 由于 test目录的代码引用了junit 类,所以还要额外引用 junit4 的jar 包。不过当前大部分的exlipse 版本都能fix up 这个问题。
d)好了,编译结束,稍后可以自动调试了。
第四步:启动Tomcat
a)配置 Run Configurations 或 Debug Configurations
b)找到工程中的主类
org.apache.catalina.startup.Bootstrap
c)配置启动加载目录
-Dcatalina.home="E:\Tomcat_Projcet\apache-tomcat-7.0.37-src\output\build"
这目录现在包含了所以Tomcat 启动需要加载的配置文件.
d) 好了Tomcat 可以启动了,http://localhost:8080
后续我会继续输出 源代码阅读的心得。