编译Tomcat
目录
- 介绍
- 下载Java Development Kit(JDK)版本7
- 安装Apache Ant 1.9.8或更高版本
- 签出或获取Tomcat源代码
- 配置下载区域
- 建立Tomcat
- 用Eclipse构建
- 与其他IDE一起构建
介绍
从源代码构建Apache Tomcat非常简单,是向Tomcat贡献的第一步。BUILDING.txt文件中提供了完整而全面的说明。以下是一个快速的分步指南。
下载Java Development Kit(JDK)版本7
构建Apache Tomcat需要安装JDK(版本7)。您可以从
http://www.oracle.com/technetwork/java/javase/downloads/index.html
下载。
重要信息:将环境变量JAVA_HOME设置为安装JDK版本的目录的路径名。
安装Apache Ant 1.9.8或更高版本
从这里下载Ant 1.9.8或更高版本的二进制发行版 。
将二进制分发包解压缩到方便的位置,以便Ant版本驻留在其自己的目录中(通常命名 apache-ant-1.9.x
)。对于本指南的其余部分,符号名称${ant.home}
用于指代Ant安装目录的完整路径名。
重要信息:创建ANT_HOME环境变量以指向目录${ant.home}
,并修改PATH环境变量以${ant.home}/bin
在其列表中包含目录 。这使得ant
命令行脚本可用,它将用于实际执行构建。
签出或获取Tomcat源代码
Tomcat SVN存储库URL:https: //svn.apache.org/repos/asf/tomcat/tc8.5.x/trunk/
Tomcat源包:https: //tomcat.apache.org/download-80.cgi。
使用SVN签出源,为当前开发代码选择已发布版本或主干的标记,或下载并解压缩源包。对于本指南的其余部分,符号名称 ${tomcat.source}
用于指代放置源的位置。
配置下载区域
构建Tomcat涉及下载它依赖的许多库。强烈建议为这些库配置下载区域。
默认情况下,构建配置为将依赖项下载到 ${user.home}/tomcat-build-libs
目录中。你可以改变它(见下文),但它必须是绝对路径。
通过创建${tomcat.source}/build.properties
文件来控制构建 。它可以用来重新定义存在于任何财产build.properties.default
和build.xml
文件。build.properties
默认情况下该文件不存在。你必须创建它。
下载区域由属性定义base.path
。例如:
# ----- Default Base Path for Dependent Packages -----
# Replace this path with the directory path where
# dependencies binaries should be downloaded.
base.path=/home/me/some-place-to-download-to
允许不同版本的Tomcat共享相同的下载区域。
另一个例子:
base.path=${user.dir}/../libraries-tomcat8.5
通过代理访问Internet的用户必须使用属性文件向Ant指示代理配置:
# ----- Proxy setup -----
proxy.host=proxy.domain
proxy.port=8080
proxy.use=on
建立Tomcat
使用以下命令构建Tomcat:
cd ${tomcat.source}
ant
构建成功完成后,将在${tomcat.source}/output/build
目录中生成可用的Tomcat安装,并且可以使用常用脚本启动和停止。
用Eclipse构建
重要信息:这不是构建Tomcat的受支持方法; 此信息不提供保修:-)。构建Tomcat的唯一支持方法是使用上面描述的Ant构建。但是,一些开发人员喜欢使用Java IDE处理Java代码,并且一些开发人员已经使用了以下步骤。
注意:这不会让你在Eclipse下构建所有东西; 构建过程需要在很多阶段使用Ant,这些阶段不是简单的Java编译。但是,它将允许您查看和编辑Java代码,获取警告,重新格式化代码,执行重构,在IDE下运行Tomcat等。
警告:${tomcat.source}/build.properties
在运行任何Ant目标之前,不要忘记按上述方法创建和配置 文件。
示例Eclipse项目文件和启动目标res/ide-support/eclipse
在源树的目录中提供 。以下说明将自动将这些复制到所需位置。
提供Ant目标是为了方便下载所有二进制依赖项,并在源树的根目录中创建Eclipse项目和类路径文件。
cd ${tomcat.source}
ant ide-eclipse
启动Eclipse并创建一个新的Workspace。
打开Preferences对话框,然后选择Java-> Build Path-> Classpath Variables以添加两个新的Classpath变量:
TOMCAT_LIBS_BASE | 与已下载二进制依赖项的base.path 设置相同的位置build.properties |
ANT_HOME | Ant 1.9.8或更高版本的基本路径 |
使用文件 - >导入,然后选择现有项目到工作区。从那里选择Tomcat源树(${tomcat.source}
)的根目录并导入位于那里的Tomcat项目。
start-tomcat
并且将在“ 运行” - >“运行配置” 对话框stop-tomcat
中提供和启动配置 。使用它们从Eclipse启动和停止Tomcat。如果您想自己配置(或使用不同的IDE),则使用主类 / 等作为程序参数,并指定 (使用您的构建目录的名称)作为VM参数。 res/ide-support/eclipse
org.apache.catalina.startup.Bootstrap
start
stop
-Dcatalina.home=...
调整一些格式化首选项将使与Tomcat编码约定保持一致(并接受您的贡献)变得更加容易:
Java - >代码样式 - >格式化程序 - >编辑... | 选项卡策略:仅限空格 选项卡和缩进大小:4 |
常规 - >编辑 - >文本编辑器 | 显示的标签宽度:2 为标签插入空格 显示空白字符(可选) |
XML - > XML文件 - >编辑器 | 缩进使用空格 缩进大小:2 |
Ant - >编辑器 - > Formatter | 选项卡大小:2 使用制表符而不是空格:未选中 |
编译器警告的建议配置记录在 res/ide-support/eclipse/java-compiler-errors-warnings.txt
文件中。