1. 安装JDK 选择1.6的最新版本,jdk-6u45-windows-i586.exe, http://download.oracle.com/otn/java/jdk/6u45-b06/jdk-6u45-windows-i586.exe,很多朋友到民间的一些网站上下载,可能无法下载到最新的,这里强烈建议到oracle的网站上下载官方的JDK,原因就一个:安全。
2. 安装Eclipse J2EE版本,到eclipse网上下载最新即可。当前的eclipse J2EE版本已经集成了很多插件,例如Maven,很好用,比自己另外去找插件方便。下载地址http://www.eclipse.org/downloads/,选择Eclipse IDEfor Java EE Developers
3. 下载安装tomcat, 到tomcat官网下载6.0版本的apache-tomcat-6.0.41,解压到E:\DevTool\apache-tomcat-6.0.41。
4. 下载并安装ANT,http://ant.apache.org/bindownload.cgi, 解压到E:\DevTool\apache-ant-1.9.4。
5. 设置环境变量,JAVA_HOME=D:\Program Files\Java\jdk1.6.0_45,设置ANT_HOME=E:\DevTool\apache-ant-1.9.4,PATH=xxx;%JAVA_HOME%\bin;%ANT_HOME%\bin。
6. 下载tomcat相应版本的源代码,解压到E:\SourceCode\apache-tomcat-6.0.41-src。
7. 打开其中的building.txt,按其中的步骤进行编译。其中主的3步为:
cd E:\SourceCode\apache-tomcat-6.0.41-src
ant download
ant
执行ant download的过程可能有点长,取决于网络条件,如果IE需要设置代理才能上网的,则需要修改E:\SourceCode\apache-tomcat-6.0.41-src\build.properties设置代理,具体设置在building.txt中有描述,配置项为:
#proxy.host=proxy.domain
#proxy.port=8080
#proxy.use=on
把这几个配置项的注释放开,设置proxy.host和proxy.port为实际可以使用的代理。另外如果没有修改build.properties默认的配置base.path=/usr/share/java,ant download会把依赖的jar包下载到E:\usr\share\java,可以修改该配置,把依赖的jar包下载到指定配置的地方,例如base.path=C:/lib, 这样执行ant download就会把依赖的jar包下载到C:/lib目录下了。
到此为止,你已经使用ant成功编译了tomcat-6.0.41了,编译的结果就在E:\SourceCode\apache-tomcat-6.0.41-src\output\build目录里面,和从tomcat网上下载的二级制的可运行包应该是一样的。
8. 在Eclipse中进行调试,需要先执行上面的7步。为了在eclipse中修改,编译,调试,你需要向eclipse中导入tomcat的源代码工程,你在E:\SourceCode\apache-tomcat-6.0.41-src会发现有2个文件eclipse.classpath和eclipse.project,这两个就是eclipse的工程配置文件,但文件名eclipse并不认识,需要重命名成.classpath和.project。在资源原理器下无法重命名成.开头的文件名,所以你需要进入cmd命令窗口,再cd 到E:\SourceCode\apache-tomcat-6.0.41-src, 然后执行
rename eclipse.classpath.classpath
rename eclipse.project.project
rename完成后将tomcat源代码的工程导入eclipse
9. 选择工程tomcat-6.0.x,然后选择properties->build Path->Libraries, 发现有两个新的环境变量TOMCAT_LIB_BASE,ANT_HOME, 选择Add Variable…, 设置TOMCAT_LIB_BASE= E:\usr\share\java,ANT_HOME= E:\DevTool\apache-ant-1.9.4,其中E:\usr\share\java是执行前面的第6步ant download下载后的目录。在eclipse中设置完环境变量TOMCAT_LIB_BASE和ANT_HOME后,就可以在eclipse中编译tomcat6.0.x的源代码成功了。
上面默认的JRE会有编译告警,可以将JRESystem Library[J2SE-1.5]删除,然后重新Add Library…使用配置的JRE即可以去掉编译告警。
10. 下面可以使用eclipse进行tomcat的源代码调试了,在eclipse中使用Ctrl+Shift+R, 输入Catalina.java,选择tomcat的入口main函数作为断点,如下图所示
在当前源代码窗口就可以右键选择Debug AsJavaApplication开始调试了。
好了,大功告成。Tomcat源码的窗口就向你打开了,让我们一起探讨其中的奥秘吧。