359025439 发表于 2017-1-18 09:53:28

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
  后续我会继续输出 源代码阅读的心得。
页: [1]
查看完整版本: Tomcat 源代码编译