`

tomcat源码下载运行

阅读更多

 tomcat 源码下载及本地运行

 

Tomcat 主干分支地址:

Git 地址 :https://github.com/apache/tomcat.git

Svn地址:http://svn.apache.org/repos/asf/tomcat/trunk

 

本文用svn (svn下载的较快些,好用点)

 

1. 预备---可先阅读官方文件 http://svn.apache.org/repos/asf/tomcat/trunk/BUILDING.txt

   (1)  安装 JDK,并配置好 环境变量。  [ 1.8.0_20]

(http://www.oracle.com/technetwork/java/javase/downloads/index.html)

检验安装及环境变量




   (2)  安装 tortoisesvn                 [TortoiseSVN 1.8.6]

               (https://tortoisesvn.net/) 

   (3) 下载,安装ant,并配置好 环境变量。 [apache-ant-1.9.6]

               (http://ant.apache.org/bindownload.cgi)

检验安装及环境变量

 

(4)下载 eclipse              [Mars.2 Release (4.5.2)]

        (http://www.eclipse.org/downloads/)

 

注: 不考虑兼容性,稳定性,纯属技术性学习,都应该选择最新的版本

 

下载此目录http://svn.apache.org/repos/asf/tomcat/trunk 所有代码到本地

     假设目录为  ${tomcat-src}

复制  ${tomcat-src}/build.properties.default 到当前目录,并改扩展后缀命名为

build.properties

在此文件找到 base.path= 配置项,

原来为: base.path=${user.home}/tomcat-build-libs

${user.home} 这个目录可改下,改为自己喜欢的目录, 该目录会下载并存放tomcat依赖的其它jar

 

若为公司网络,存在代理,则需要在build.properties配置 如下项

        proxy.use=true

        proxy.host=proxy.domain

        proxy.port=8080

        proxy.user=username

        proxy.password=password

 

 在${tomcat-src} 目录下依次执行如下两个命令

ant

ant ide-eclipse

 

若存在执行 ant命令时,下载过程报错,即下载第三方Jar失败,可以手动下载,按照指定的目录放。

 

比如:

downloadzip:

      [get] Getting: https://objenesis.googlecode.com/files/objenesis-1.2-bin.zi

p

      [get] To: E:\osource\svn\apache\tomcat\trunk\3rd\tomcat-build-libs\downloa

d-157966192.zip

      [get] Error getting https://objenesis.googlecode.com/files/objenesis-1.2-b

in.zip to E:\osource\svn\apache\tomcat\trunk\3rd\tomcat-build-libs\download-1579

66192.zip

 

BUILD FAILED

E:\osource\svn\apache\tomcat\trunk\build.xml:2840: The following error occurred

while executing this line:

E:\osource\svn\apache\tomcat\trunk\build.xml:2944: java.net.ConnectException: Co

nnection timed out: connect

 

1.可以手动打开浏览器 https://objenesis.googlecode.com/files/objenesis-1.2-bin.zi

P下载。

当然此处googlecode的访问,需要一定技术,实在不行,也可 百度 objenesis

网上有下的。

 

具体下载的第三jar放到哪。可参考build.properties文件。比如:

 

# ----- objenesis, used by EasyMock, version 1.2 or later -----

objenesis.version=1.2

objenesis.home=${base.path}/objenesis-${objenesis.version}

objenesis.loc=https://objenesis.googlecode.com/files/objenesis-${objenesis.version}-bin.zip

objenesis.jar=${objenesis.home}/objenesis-${objenesis.version}.jar

 

其中${base.path}为  

base.path=${user.home}/tomcat-build-libs   ({user.home}是否改了?改了就换下..)

其中 ${objenesis.version}  以 1.2  替换

Jar网上存在的地址为:

https://objenesis.googlecode.com/files/objenesis-1.2-bin.zip

 

本地需要放的地址为

${base.path}/objenesis-1.2/objenesis-1.2.jar



  

 

${tomcat-src}这个目录会有 

.classpath

.project 这两个文件,因此可以导入eclipse

 

以Exiting Projects into Workspace

导入eclipse 工程  

 

此时发现报错如下

DescriptionResourcePathLocationType

Unbound classpath variable: 'ANT_HOME/lib/ant.jar' in project 'tomcat-9.0.x'tomcat-9.0.xBuild pathBuild Path Problem


 

打开 .classpath 文件 发现



 

解决方法:

Window->Preferences->java->build path->Classpath Variables

选择右边 New  添加两个classpath 变量

Ant home目录


上面配置的tomcat依赖的第三方目录base.path=${user.home}/tomcat-build-libs


  

 

若不想配置变量到eclipse,也可以直接改  .classpath文件。比如

 

<classpathentry kind="var" path="TOMCAT_LIBS_BASE/ecj-4.5.1/ecj-4.5.1.jar"/>

改为

<classpathentry 

kind="lib" path="E:/osource/svn/apache/tomcat/trunk/3rd/tomcat-build-libs/ecj-4.5.1/ecj-4.5.1/ecj-4.5.1.jar"/>

 

 

 

5

Eclipse中, 选择该工程文件下  build.xml

选择右键

 

Ant build

     [echo] Building Tomcat JDBC pool libraries

prepare:

download:

build-src:

build:

compile-webapp-examples:

deploy:

examples-sources:

BUILD SUCCESSFUL

Total time: 2 seconds

 

此时output目录下有对应的编译打包的文件, 运行的所有文件都以 output目录下的为准,比如配置文件

output\build\conf\server.xml

 

 

运行

org.apache.catalina.startup.Bootstrap

下的 main方法

启动  start-tomcat

 

三月 31, 2016 9:40:32 下午 org.apache.catalina.startup.Catalina start

信息: Server startup in 3611 ms

 

浏览器访问

http://localhost:8080/

 

官方样例学习:

 http://localhost:8080/examples/

 

分享到:
评论

相关推荐

    tomcat源码+文档pdf+源码解析

    源码解析部分则是对Tomcat源码的深度剖析,涵盖了关键类和方法的作用、设计模式的运用以及性能优化技巧。这有助于开发者理解Tomcat内部的工作流程,例如,如何处理HTTP请求的生命周期,以及线程池是如何调度和管理的...

    Ant编译Tomcat源码、MyEclipse导入Tomcat源码、执行Tomcat源码启动Tomcat

    本篇将详细介绍如何使用Ant编译Tomcat源码,以及如何在MyEclipse环境中导入并运行Tomcat源码。 首先,Ant是Apache软件基金会开发的Java项目自动化构建工具,它能够执行编译、测试、打包等任务。在Apache Tomcat的...

    tomcat7源码下载

    源码下载是开发者深入理解其内部工作原理的重要途径,本篇文章将围绕Tomcat7源码进行详细探讨。 一、Tomcat7源码结构解析 Tomcat7的源代码结构清晰,主要包含以下几个核心模块: 1. catalina:这是Tomcat的核心...

    tomcat7源码

    源码分析是提升开发者对服务器内部运作机制理解的重要途径,尤其对于Tomcat这样的核心组件,源码的学习能够帮助我们更深入地理解Web应用的部署、运行以及性能优化。 首先,我们要了解Tomcat的架构。Tomcat7基于...

    tomcat源码

    本篇文章将深入探讨Tomcat的工作原理,并结合源码进行解析,帮助读者更全面地理解这款服务器的运行机制。 1. **Tomcat架构概述** Tomcat的设计遵循了Servlet容器的基本规范,主要包括四个核心组件:Catalina(核心...

    tomcat源码运行缺少jar

    在深入探讨Tomcat源码运行时可能遇到的缺失JAR问题之前,让我们先理解一下Tomcat和这些特定库的基本概念。 Tomcat是一个流行的开源Java Servlet容器,由Apache软件基金会维护。它实现了Java EE(现在称为Jakarta EE...

    eclipse运行tomcat源码:修改源码:重新编译:重新打包

    4.tomcat源码在eclipse运行,重新编译,重新打包步骤文件 5.一个tomcat源码在eclipse上运行的java工程 作用: 1.用于学习tomcat源码和了解tomcat运行机制 2.学习如何修改tomcat源码后如何重新编译,打包。

    tomcat源码导入myeclipse

    【标题】"Tomcat源码导入MyEclipse"是一个针对Java开发者的重要实践操作,它涉及到两个关键组件:Tomcat服务器和MyEclipse集成开发环境。Tomcat是Apache软件基金会的一个开源项目,它作为Servlet和JavaServer Pages...

    Tomcat深入剖析pdf+源码(Tomcat运行原理)

    通过阅读和分析源码,可以加深对Tomcat运行原理的理解,这对于解决实际问题和进行性能调优非常有帮助。 总之,《Tomcat深入剖析》结合源码分析,是一本全面且深入的Tomcat学习资源,无论是初学者还是经验丰富的...

    Tomcat8 源码,可以在eclipse中直接运行

    在Eclipse中运行Tomcat源码前,确保已正确配置了Eclipse的Java和Web开发工具(如JDT和WTP)。导入源码后,需要设置项目的构建路径,确保所有依赖项被正确引入。描述中提到的"依赖添加完毕",意味着源码已经包含了...

    编译运行tomcat源码需要用到的jar包

    编译运行tomcat源码需要的jar包,junit在Eclipse中本来就有,就不提供了。另外ecj-4.3.1.jar就是Eclipse的JDT插件:org.eclipse.jdt.core_3.3.1.v_780_R33x.jar。将jar添加到eclipse中并增加到build path就可以运行...

    Tomcat源码阅读(一)使用Idea运行Tomcat6源码

    1. 下载Tomcat源码:可以从Apache官网获取Tomcat 6的源码包,例如这里我们使用的是apache-tomcat-6.0.44-study。 2. 导入源码项目:在Idea中选择“Open”打开源码目录,Idea会自动识别为Maven项目。 3. 配置Maven...

    tomcat 源码分析系列文档

    【标签】"tomcat源码分析"表明整个资料集专注于Tomcat的源代码级探索,适合于开发者或运维人员深入了解服务器的底层实现。 【文件名称列表】中的每个文档都对应一个特定主题: 1. "Tomcat处理HTTP请求源码分析.doc...

    编译tomcat源码所需jar包

    本文将深入探讨“编译Tomcat源码所需jar包”这一主题,帮助开发者了解如何从源码构建Tomcat,以及在这个过程中需要用到的关键jar包。 首先,我们来了解一下为什么要从源码编译Tomcat。直接下载预编译的二进制版本...

    Eclipse下跟踪运行TOMCAT源码所需jar包

    要在Eclipse中跟踪运行Tomcat源码,首先你需要下载Tomcat的源码包,并将其导入到Eclipse项目中。然后,将这些JAR包添加到项目的类路径中。你可以通过以下步骤操作: 1. 在Eclipse中右键点击项目,选择“属性”...

    Tomcat源码研究.pdf

    根据所提供的文件信息,我们将从以下几个方面详细探讨Tomcat源码的相关知识点: 1. Catalina脚本解析:Catalina是Tomcat的主引擎,负责整个容器的初始化和处理。在Tomcat源码中,Catalina的脚本解析是了解其启动...

    tomcat6的源码

    1. **Servlet容器**:Tomcat作为Servlet容器,其主要任务是管理和运行Servlet,接收HTTP请求,并将响应返回给客户端。在源码中,你可以看到如何处理这些请求和响应的实现。 2. **线程模型**:Tomcat使用了多线程...

    Tomcat6源码下载

    本文将围绕Tomcat 6.0源码进行深入探讨,旨在帮助读者理解其内部运行机制,提高对服务器性能优化和问题排查的能力。 首先,源码下载是学习任何软件内部工作原理的第一步。对于Tomcat 6.0,你可以通过Apache官方网站...

    IDEA版tomcat源码搭建.docx

    IDEA 版 Tomcat 源码搭建 ...使用 IDEA 搭建 Tomcat 源码环境需要下载 Tomcat 的源代码,配置 Java_home 环境变量,创建 catalina-home 目录和 pom.xml 文件,并编辑 POM.xml 文件以便正确地编译和打包 Tomcat 源码。

Global site tag (gtag.js) - Google Analytics