Tomcat 源码阅读(序)
Posted 皓月行空
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat 源码阅读(序)相关的知识,希望对你有一定的参考价值。
环境:tomcat7.0.78、jdk 1.7.17 myeclipse2014
坚持一下,把源码看完,勤奋一点,不要在懒惰了,你已经落下别人很多了
学习Tomcat源代码,首先得需要把tomcat源码下载下来,导入到ide中,一直忽略了这个问题,这里就写一篇文章,记一下如何把tomcat源码导入到ide中
1、新建maven项目:
创建一个新的maven项目,网上都有一些教程,这里只是截图,不加赘述。
至于为什么创建maven项目,而不是java项目,是因为 tomcat中需要一些三方jar包,这些jar包 个人习惯用maven 的pom.xml文件集成进来,当然 ,仁者见仁、智者见智,自己习惯就行。
2、下载tomcat源码,这里仅提供tomcat7.0.78版本的源码下载:
https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.78/src/
3、解压下载的tomcat源码压缩包,java目录结构下的 javax 和org 这两个文件夹拷贝到myeclipse 的src/main/java包下
吧conf文件夹拷贝到项目的根目录下, 并且在conf 右键 ---》Build Path---》Use as Source Folder.
最终myeclipse的目录结构如下所示:
4、集成tomcat 的依赖jar包:
pom.xml文件如下所示:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zxl.src</groupId>
<artifactId>src-tomcat-7.0.78</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>src-tomcat-7.0.78</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.9.9</version>
</dependency>
<dependency>
<groupId>org.eclipse.jdt.core.compiler</groupId>
<artifactId>ecj</artifactId>
<version>4.4.2</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>geronimo-spec</groupId>
<artifactId>geronimo-spec-jaxrpc</artifactId>
<version>1.1-rc4</version>
</dependency>
<!--
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>3.2</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>1.3</version>
</dependency>
-->
</dependencies>
</project>
至于怎么找到的这些依赖jar包,可以通过找到classpath文件来处理,如下图所示:
其中classpath的文件内容如下所示:
我们可以直接去maven资源库里找到对应的jar包,这里提供一下maven资源库的地址
5、最终tomcat源码的项目结构如下图所示:
6、找到Bootstrap 文件,执行。
7、如果 想部署几个web项目,可以直接修改conf下的server.xml文件里的 Host标签内容:
这样,最终会指向 我们部署到Tomcat下的web项目。
以上是关于Tomcat 源码阅读(序)的主要内容,如果未能解决你的问题,请参考以下文章