1.安装TortoiseSVN
http://tortoisesvn.net/
2.利用TortoiseSVN下载Tomcat6源码
exoprt http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_26
(我选择的版本是TOMCAT_6_0_26)
3.编译Tomcat6源码
Tomcat是用ant构建的,首先要安装ant,这里不介绍ant的安装了
从Tomcat的源代码文件找到build.properties.default文件,把名字改为build.properties,打开这个文件找到下面这行:
base.path=/usr/share/java
这个路径是用来存放即将下载的文件的目录,由于我用的是Windows,所以改为适合我的目录:
base.path=D:/Workspace/JEE/workspace/TOMCAT_6_0_26/share
接着在D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src 目录下打开命令行窗口,执行下面命令:
ant download
TOMCAT_6_0_26这个版本目前下载正常,较老版本一些下载链接可能会失效,需要在 build.properties文件中改链接。
都下载了如下文件:
下载完后直接执行 ant 命令就开始编译了
编译完成后会产生一个output目录,到这个目录(D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src\output\build)下看看,怎么样?我们见到了熟悉的Tomcat目录结构,如下图:
4.将Tomcat源码导入Eclipse
打开Eclipse,新建一个Java项目,然后点击“Next”按钮,在“Use default location”中填入D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src
Project name: TOMCAT_6_0_26
然后一路next
接着我们会看到Eclipse拒绝编译该项目,不要着急,这是由于Eclipse找不到该项目指定的库文件。右击该项目弹出菜单选择 "Build Path" -> "Configure Build Path..." -> "Libraries"
Remove下面两项:
ANT_HOME/lib/ant.jar
TOMCAT_LIBS_BASE/...
接着添加如下依赖(Add External JARs...):
(也可以参考:
http://tomcat.apache.org/tomcat-6.0-doc/building.html#Building_with_Eclipse)
ant.jar (在你电脑ant安装目录下lib目录下可以找到)
org.eclipse.jdt.core_3.3.1.v_780_R33x.jar (刚才下载的目录D:\Workspace\JEE\workspace\TOMCAT_6_0_26\share\eclipse\plugins 可以找到)
junit4.7 (这个原来有,我给换成4.7的了)
5.在Eclipse中运行Tomcat
找到org.apache.catalina.startup.Bootstrap
右键 Run as -> Run Configurations...
在Program参数窗口和VM参数窗口分别填入
start
和
-Dcatalina.home="D:\Workspace\JEE\workspace\TOMCAT_6_0_26\src\output\build"
Debug同理,不解释,看图:
从org.apache.jasper.compiler.Compiler类的generateJava()方法开始Debug更好,debug启动Tomcat,然后浏览器输入地址并回车,就会看到如下Debug视图:
注意:generateJava方法是将jsp编译成java class,这个行为只有第一次请求时才会调用,将你再次发送请求时你将看不到这个Debug视图了,解决办法是到Tomcat的 build\work\Catalina\目录删除对应jsp的类文件
接下来,带个好心情,读源码吧,祝快乐
- 大小: 109.1 KB
- 大小: 29.1 KB
- 大小: 37.4 KB
- 大小: 68.3 KB
- 大小: 47.1 KB
- 大小: 62.1 KB
- 大小: 69.1 KB
- 大小: 31.1 KB
- 大小: 50.4 KB
- 大小: 86.3 KB
- 大小: 14.7 KB
- 大小: 14.6 KB
分享到:
相关推荐
《深入剖析Tomcat6源码工程》 Tomcat6,作为Apache Tomcat服务器的一个重要版本,是Java Web应用开发和部署的基石。这个压缩包包含了Tomcat6的源代码,对于开发者来说,它是一个深入了解Tomcat工作原理和优化Web...
6. **logs目录**:Tomcat运行时产生的日志文件存储在这里,如`catalina.out`记录服务器的常规输出,这对于调试和监控服务器状态至关重要。 7. **RUNNING.txt**:这是一个简短的文档,提供了如何启动、停止和管理...
- `BUILDING.txt`:介绍了如何构建Tomcat源码。 - `RUNNING.txt`:详述了如何启动、停止和管理Tomcat服务器。 - `bin`:包含用于启动、停止和管理Tomcat的脚本文件,如`startup.sh`(Unix/Linux)和`startup.bat`...
6. **BUILDING.txt**: 提供了构建Tomcat源码的详细步骤,对于开发者来说很有用。 7. **RUNNING.txt**: 解释如何启动、停止和管理Tomcat服务器,对运维人员来说是必不可少的参考。 8. **bin**: 这个目录包含用于启动...
6. **BUILDING.txt**: 这个文件提供了构建Apache Tomcat源代码的指南,包括依赖项和构建过程,对于开发者来说非常有用。 7. **RUNNING.txt**: 提供了运行Apache Tomcat服务器的详细步骤,包括配置、启动、停止和...
6. **Tomcat的工作原理**:Tomcat接收HTTP请求,解析请求数据,调用对应的Servlet实例处理请求,然后将结果通过HTTP响应返回给客户端。 7. **部署应用程序**:开发者通常会将war文件放入`webapps`目录下,Tomcat会...
6. **BUILDING.txt**: 提供了构建Tomcat自定义版本的详细步骤和依赖项,对于开发者来说,如果你想从源代码编译Tomcat,这是一个宝贵的指南。 7. **RUNNING.txt**: 包含了启动、停止和管理Tomcat服务器的详细说明,...
- `BUILDING.txt`:构建指南,指导开发者如何从源代码构建Apache Tomcat。 - `RUNNING.txt`:运行指南,解释如何启动、停止和管理Tomcat服务。 2. **核心目录**: - `bin`:包含启动和管理Tomcat的脚本,如`...
6. **性能优化**:Tomcat允许调整线程池大小、连接超时、缓冲区大小等参数,以适应不同规模的Web应用需求。此外,通过NIO、 APR(Apache Portable Runtime)或其他高性能连接器可以提高其并发处理能力。 7. **集成...
6. BUILDING.txt:提供了构建Tomcat 8的详细步骤,对于开发者来说,如果需要从源代码编译Tomcat,这个文件非常有用。 7. RUNNING.txt:这是一个指导文档,说明了如何启动、停止和管理Tomcat服务器,包括配置环境...
[jar] Building jar: D:\java\wsdd\target\MyServices.jar [copy] Copying 1 file to e:\apache-tomcat-7.0.23\webapps\axis\WEB-INF\lib [delete] Deleting directory D:\java\wsdd\target deploy: [java] ...
1. `LICENSE`, `CONTRIBUTING.md`, `README.md`, `NOTICE`, `RELEASE-NOTES`, `BUILDING.txt`, `RUNNING.txt`:这些都是Apache软件基金会项目的标准文件,提供了关于许可证信息、贡献指南、项目说明、发布笔记、构建...
6. BUILDING.txt:说明了如何构建Apache Tomcat源代码,对于开发者来说,这有助于他们根据需要定制自己的Tomcat实例。 7. RUNNING.txt:提供了启动、停止和管理Tomcat服务器的详细步骤,是管理员日常运维的必备文档...
9. 从源代码构建Tomcat(第9章:Building Tomcat from Source): - 详细介绍了如何从源代码安装和构建Tomcat,包括安装Apache Ant、获取源代码、下载支持库以及编译和安装Tomcat。 10. Tomcat集群(第10章:...
as described in "BUILDING.txt". If you do this, the value to use for "${catalina.home}" will be the "dist" subdirectory of your source distribution. <br>(2.1) Download a binary distribution ...
【BUILDING.txt】文件提供了构建Apache Tomcat的步骤和指导,对于那些想要从源代码构建Tomcat或者对其进行定制的人来说至关重要。 【CONTRIBUTING.md】是开源项目的常见文件,其中包含了贡献代码、报告问题和参与...
9. **BUILDING.txt, CONTRIBUTING.md, LICENSE, NOTICE, RELEASE-NOTES, RUNNING.txt**: - 这些文件提供了关于Tomcat构建过程、贡献指南、许可协议、版本发布注意事项以及运行Tomcat的相关信息。 理解这些目录的...
6. BUILDING.txt:这是一份构建Tomcat 8.5.35的指导,包括从源码编译的步骤和依赖项。 7. RUNNING.txt:这份文档详细解释了如何启动、停止和管理Tomcat服务器,对于运维人员非常有用。 8. 信达澳银流程测试.bpmn20...
6. **BUILDING.txt**:对于开发者来说,这个文件提供了构建Tomcat自定义版本的步骤和指引。 7. **RUNNING.txt**:这个文档详细解释了如何启动、关闭和管理Tomcat服务器,包括设置环境变量、配置服务器端口等。 8. ...
6. **BUILDING.txt**: 提供了构建Tomcat的详细步骤,如果你需要从源代码编译Tomcat,这个文件将提供必要的指导。 7. **RUNNING.txt**: 描述了如何启动、停止和管理Tomcat服务器,包括环境变量设置、启动脚本的用法...