Tomcat源码分析一:源码导入

下载tomcat源码包

从tomcat官网tomcat.apache.org上下载tomcat8.x的源码包apache-tomcat-8.0.32-src.zip http://tomcat.apache.org/download-80.cgi

生成IDE项目

源码包下的ant build.xml中已经包含了生成eclipse项目的target:

<target name="ide-eclipse" depends="download-compile, extras-webservices-prepare, download-test-compile" description="Prepares the source tree to be built in Eclipse">

先安装好ant,这里不讲ant的安装过程。进入源码根目录执行ant命令:

> ant ide-eclipse

这个任务会去下载objenesis jar包,可能会报错由于默认的目标地址是googlecode,无法访问,通过翻墙代理先将其下载放到自己的某个服务器上开启nginx,然后修改根目录下的build.properties.default文件,定位到objenesis.loc=这一行,将其之修改为我服务器上jar包文件的地址比如:http://x.x.x.x/objenesis-${objenesis.version}-bin.zip,再次执行,成功显示BUILD SUCCESSFUL 接下来在根目录下会生成eclipse项目需要的.classpath,.project等文件。

导入eclipse项目

接下来打开eclipse,file -> import -> Existing Projects into Workspace 选择源码目录导入源码; 导入源码后,项目还会报错,右击项目名,Build Path -> Configure Build Path...

点击Add Variable... 添加两个变量ANT_HOME和TOMCAT_LIBS_BASE,ANT_HOME设置为安装的ant的根目录,TOMCAT_LIBS_BASE设置为执行ant ide-eclipse命令生成的目录,我的是E:\usr\share\java

重新编译OK了

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Hongten

Android开发-模拟器的使用-02

我们开发的Android程序是放在移动设备(如:手机,平板电脑等)上面运行的,我们不可能每次编写一个程序都要放到移动设备上面去测试运行。这样是很不方便的。另外,...

1791
来自专栏C/C++基础

JSP学习心路

1.先安装JDK,在安装开发工具(MyEclipse、Eclipse或Netbeans)和tomcat,其中MyEclipse内置tomcat服务器;

2162
来自专栏小白安全

小白博客 kali Linux渗透测试下Vega扫描工具的使用方法

Vega是一个免费的开源扫描器和测试平台,用于测试Web应用程序的安全性。Vega可以帮助您查找和验证SQL注入,跨站点脚本(XSS),无意中泄露的敏感信息以...

4639
来自专栏SpringBoot 核心技术

第二十一章:SpringBoot项目中的全局异常处理

6883
来自专栏吴伟祥

Webjar是什么

4202
来自专栏猿天地

Spring Cloud Ribbon 重试机制

前言 在集群环境中,多个节点来提供服务,难免会有某个节点故障 用Nginx做负载均衡的时候,如果你的应用是无状态的,是可以滚动发布的,也就是一台台去重启应用 这...

3996
来自专栏向治洪

在Windows下搭建React Native Android开发环境

安装JDK 从Java官网下载JDK并安装。请注意选择x86还是x64版本。 推荐将JDK的bin目录加入系统PATH环境变量。 安装Android S...

2746
来自专栏yukong的小专栏

【SpringBoot系列01】初识SpringBoot一、介绍二、目标三、实现四、总结

想必大家都一定用过spring框架,每次整合spring框架的时候总是会有无穷无尽的xml配置文件,第一次写配置文件的时候,大家还会抱着学习的心态认真读每一个配...

1073
来自专栏CodeSheep的技术分享

centos7上elastic search安装填坑记

1796
来自专栏程序员的诗和远方

React-Native For Android 环境搭建及踩坑

安装环境 本文默认以MacOS为系统,毕竟除了用React Native搞Android,你也会想用它搞iOS。 首先当然是Android的环境搭建,这里还是推...

3276

扫码关注云+社区

领取腾讯云代金券