以前看过Tomcat5的一部分源代码,当时只看了个大概的启动分析,后来看了《How Tomcat Works》这本书,讲的还行,出版的较早,所以是基于Tomcat4的代码的分析,Tomcat已经release到7了,很多后来添加的特性与新的实现方式那本书里面没有涉及。下半年业余时间的主要任务就是完成Tomcat7各个我感兴趣的点的系列文章。
先说下我的源码分析的环境搭建吧,用的是eclipse Juno Service Release 1,然后在tomcat官网下了tomcat7.0.42的源码,这两样准备好之后便是搭建能够运行源码的调试环境了。
1.在eclipse中新建一个java项目,项目取名tc7.0.42
JRE选择1.6的
其他设置默认
2.将下载的tomcat源码包解压开,并拷贝到Eclipse里新建的项目根目录下
注意,我这里将源码解压开后的bin目录重命名成script之后才拷贝的,因为新建的Java项目中默认编译后的文件存放目录是bin,这样做防止编译后的文件覆盖原来拷贝过去的内容。
3.将项目中默认的src目录删掉,java和test作为源目录
4.此时会发现项目中缺少一些类,需要手动将依赖的jar包添加进来,所以新建了一个depend-lib目录
5.实际上缺少的这些jar包eclipse安装目录里面都有,直接拷贝过来就可以了。
在eclipse安装目录的plugins目录下,搜索"ant.jar"
搜索"javax.wsdl",选版本较高的那个jar包
搜索"jaxrpc"
搜索“jdt.core”选最大的那个jar包
6.把这些jar包加入到编译路径里
7.此时发现test目录下还有错误,实际上是因为test里面用到了junit的一些注解,所以需要将junit4引进来
右击项目,点击Build Path,选择Add Libraries
选择junit
下一步,junit版本选择JUnit 4
自此整个项目应该可以编译了。
8.接下来运行项目根目录下的build.xml,执行默认的ant任务,看看项目构建的有没有问题。
控制台输出"BUILD SUCCESSFUL"表示编译构建成功。
9,此时刷新整个项目,会发现多出一个output目录
10.为了让应用跑起来,可以检查一下output\build\conf下是否已经有配置文件,这些文件实际是从项目根路径conf目录下拷贝过来的。
11.找到BootStarp.java文件,Debug前加入默认的catalina home路径作为启动参数。
BootStarp.java文件右键选择Debug As->Debug Configurations
路径设置为output下build的绝对路径。比如我自己的机器设置的值是-Dcatalina.home="E:\workspace\study\tc7.0.42\output\build"
这样就可以在文件中加入断点Debug源码分析了。
相关推荐
【标题】"Tomcat7.0.42源码,eclipse直接使用" 【内容】: Tomcat7.0.42是Apache Tomcat服务器的一个版本,它是一个开源的Java Servlet容器,主要用于实现Java Servlet和JavaServer Pages(JSP)技术。这个版本的...
1. `LICENSE`:包含了Tomcat7.0.42的许可协议信息,通常包括Apache License 2.0,它允许用户免费使用、修改和分发Tomcat的源代码。 2. `NOTICE`:此文件列出了Tomcat中使用的第三方库及其许可信息,确保用户了解...
java tomcat 7.0.42 websocket可使用java tomcat 7.0.42 websocket可使用java tomcat 7.0.42 websocket可使用java tomcat 7.0.42 websocket可使用
Apache Tomcat 7.0.42 是一个广泛使用的开源软件,它是一个符合Java Servlet和JavaServer Pages(JSP)规范的应用服务器,主要用于部署和运行Java Web应用程序。这个版本是Tomcat 7系列中的一个重要发布,它包含了多...
Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache Tomcat 最新源代码Apache ...
《深入剖析Tomcat6源代码:运行与调试指南》 Tomcat6作为一款经典的开源Java Servlet容器,其源代码的学习对于理解Java Web应用的运行机制、优化服务器性能以及解决实际问题具有重大价值。本篇文章将从以下几个方面...
**描述:“这是一款基于Java的Tomcat 7.0.42服务器,它是Apache软件基金会的一个开源项目,主要用于部署和运行Java Servlets和JavaServer Pages(JSP)。Tomcat是Java EE(现称为Jakarta EE)的一部分,提供了一个轻...
总之,Tomcat 7.0.42源码的深度研究有助于我们理解Web服务器的工作原理,优化应用性能,解决运行时问题,甚至进行定制化开发。通过对源码的阅读和实践,开发者可以更好地驾驭这个强大的Web服务器,从而构建更加高效...
本文将深入探讨Tomcat 8的源代码,帮助读者理解其工作原理,以便更好地优化和定制自己的服务器环境。 1. **目录结构** Apache Tomcat 8的源代码目录结构清晰,主要分为以下几个部分: - `conf`:存放服务器配置...
【标题】"Tomcat-7.0.42 绿色免安装版"是指Apache Tomcat服务器的一个特定版本,该版本无需正式安装即可运行,方便快捷。Tomcat是一款开源的Java Servlet容器,主要负责处理Java Web应用程序,尤其适用于小型到中型...
【标题】"Tomcat-7.0.42 + Tomcat-7.0.88" 涵盖了两个不同版本的Apache Tomcat服务器,这是由Apache软件基金会开发的一个开源Java Servlet容器,用于部署和运行Java Web应用程序。Tomcat实现了Java EE(现在称为...
Apache Tomcat 7.0.42作为Java Web应用程序的基石,提供了稳定、高效的运行环境。开发者可以利用它快速搭建Web应用服务器,同时结合各种Java Web框架,实现复杂的功能。了解并熟练掌握Tomcat的安装、配置和管理技巧...
总的来说,"Tomcat7.0.42免安装版"是一个方便开发和测试的Java Web服务器,它提供了Java Servlet和JSP的执行环境,而其免安装特性使得部署和迁移变得简单易行。对于Java Web开发者来说,掌握Tomcat的使用和配置是必...
标题“编译tomcat7.0.42结果”指的是对Apache Tomcat 7.0.42版本的源代码进行编译后得到的产物。Tomcat是一款广泛使用的开源Java Servlet容器,它实现了Java EE(现称为Jakarta EE)中的Web应用规范,如Servlet和JSP...
Tomcat作为一款轻量级Web容器,提供了一个高效且灵活的环境来运行Java Web应用。 **2. Apache Tomcat 7.0.42** Apache Tomcat 7是Tomcat的一个重要版本,支持Java EE 6规范。这个特定的版本7.0.42包含了对安全性和...
这个源代码压缩包提供了Tomcat6的完整源码,对于开发者来说,深入理解其内部工作原理、优化性能或者定制功能都具有极大的价值。下面将详细介绍Tomcat6的一些关键知识点。 1. **Servlet容器**: Tomcat作为一个...