首先从Apache的SVN服务器中获取Tomcat源码
- 安装SVN客户端。当然也可以安装(My)Eclipse的插件。这里采用安装SVN客户端的方式。安装方式参考我的另一篇博文:SVN服务器搭建以及在MyEclipse中的使用方法
- cmd-->svn export http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_36/ D:/Tomcat_Src ;后面的路径可以自定义。(要求联网)。执行成功后,下面是D:/Tomcat_Src目录的结构:
- 在该目录下新建build.properties文本文件,并复制目录下的build.properties.default文件的内容到build.properties中。
- 修改build.properties文件内容,把
改为:.path=/usr/share/java
因为原始内容是linux系统的路径表示法。这里得改为Window系统的路径表示法.path=D:/Tomcat_Src/share
编译Tomcat源码
- 由于Tomcat是用Ant工具进行编译,所以得下载ANT。下载地址:http://ant.apache.org/bindownload.cgi 。得到 apache-ant-1.9.3-bin.zip。也可以使用其他版本。安装方法可以解压后参照里面的manual目录下的install.html文件。
- 执行cmd,切换到D:/Tomcat_Src目录下,执行ant downlaod命令。执行完后,D:/Tomcat_Src目录下会新建有一个share目录,就是上面配置的。其目录结构如下:
- 同时也会新建output目录。
- 执行cmd,切换到D:/Tomcat_Src目录下,执行ant 命令,开始编译。跳过上述步骤不会编译成功。成功后会在D:/Tomcat_Src目录下新建一个output目录。这个目录后面会用到。
导入MyEclipse
直接上图:
点击Finish后,出现工程Tomcat 6.0.36,但又部分代码报错。这是因为缺少部分Jar包。分别是:
- ant.jar 这个可以在刚才那个ant的解压目录中的lib文件下找到。
- wsdl4j-1.6.2.jar 下载地址:http://download.csdn.net/detail/u012358984/6849633
- javaee.jar 下载地址:http://download.csdn.net/detail/u012358984/6849637
加入上面三个Jar包后,就能编译通过。
运行Tomcat
- 找到类:org.apache.catalina.startup.Bootstrap
- 右键run as--> run configurations.如下图设置:
- 点击Run,输出:
Jan 14, 2014 11:50:36 PM org.apache.catalina.core.AprLifecycleListener initINFO: The APR d Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: D:Program FilesJavajdk1.7.0_45in;C:windowsSunJavain;C:windowssystem32;C:windows;E:Installation ProgramsAbout Javaapache-ant-1.9.3/bin;D:Program FilesJavajdk1.7.0_45in;D:Program FilesJavajdk1.7.0_45inin;D:Program FilesPython33;C:windowssystem32;C:windows;C:windowsSystem32Wbem;C:windowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)Microsoft SQL Server100ToolsBinn;C:Program Files (x86)Microsoft SQL Server100DTSBinn;C:Program Files (x86)Microsoft SQL Server100ToolsBinnVSShellCommon7IDE;C:Program Files (x86)Windows Kits8.1Windows Performance Toolkit;C:Program FilesMicrosoft SQL Server110ToolsBinn;D:Program Files (x86)Gitcmd;D:Program FilesMySQLMySQL Server 5.5in;D:Program FilesTortoiseSVNin;d:Program Files (x86)Bazaar;.Jan 14, 2014 11:50:36 PM org.apache.coyote.http11.Http11Protocol initINFO: Initializing Coyote HTTP/1.1 on http-8080Jan 14, 2014 11:50:36 PM org.apache.catalina.startup.Catalina loadINFO: Initialization processed in 890 msJan 14, 2014 11:50:36 PM org.apache.catalina.core.StandardService startINFO: Starting service CatalinaJan 14, 2014 11:50:36 PM org.apache.catalina.core.StandardEngine startINFO: Starting Servlet Engine: Apache Tomcat/@VERSION@Jan 14, 2014 11:50:36 PM org.apache.catalina.startup.HostConfig deployDe orINFO: Deploying configuration de or docs. Jan 14, 2014 11:50:36 PM org.apache.catalina.startup.HostConfig deployDe orINFO: Deploying configuration de or host-manager. Jan 14, 2014 11:50:36 PM org.apache.catalina.startup.HostConfig deployDe orINFO: Deploying configuration de or manager. Jan 14, 2014 11:50:37 PM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory examplesJan 14, 2014 11:50:37 PM org.apache.catalina.core.ApplicationContext logINFO: ContextListener: contextInitialized()Jan 14, 2014 11:50:37 PM org.apache.catalina.core.ApplicationContext logINFO: SessionListener: contextInitialized()Jan 14, 2014 11:50:37 PM org.apache.catalina.startup.HostConfig deployDirectoryINFO: Deploying web application directory ROOTJan 14, 2014 11:50:37 PM org.apache.coyote.http11.Http11Protocol startINFO: Starting Coyote HTTP/1.1 on http-8080Jan 14, 2014 11:50:37 PM org.apache.jk.common.ChannelSocket initINFO: JK: ajp13 listening on /0.0.0.0:8009Jan 14, 2014 11:50:37 PM org.apache.jk.server.JkMain startINFO: Jk running ID=0 time=12/33 config=nullJan 14, 2014 11:50:37 PM org.apache.catalina.startup.Catalina startINFO: Server startup in 1385 ms- 启动成功。
- 当然也就能设置断点,和debug as了。
若有不对的地方,欢迎吐槽。技术嘛,就是要讨论才能迅速提高。
继续阅读与本文标签相同的文章
上一篇 :
开源框架中的设计模式
下一篇 :
2014读书计划
-
Tomcat请求处理流程
2026-06-02栏目: 教程
-
BT5 安装 Fcitx
2026-06-02栏目: 教程
-
基于 HTML5 Canvas 的工控机柜 U 位动态管理
2026-06-02栏目: 教程
-
BT5 Network-Manager
2026-06-02栏目: 教程
-
BackTrack5 Note01
2026-06-02栏目: 教程
