eclipse 编译tomcat8.0.26的源码
第一次写东西, 如果有不对的地方,请大神指正,我会尽快修正……
参考:http://www.cnblogs.com/lanxuezaipiao/p/3640923.html
1、从tomcat官网(http://tomcat.apache.org/)下载 源码 apache-tomcat-8.0.26-src.zip 。
2、下载项目构建工具 ant (http://ant.apache.org/)。解压后, 配置环境变量,并修改path值。 例如,ANT_HOME="D:\Program Files\Apache Foundation\apache-ant-1.9.6" , path="…… ; %ANT_HOME%\bin" 。
3、解压文件源码至 eclipse工作空间。 并在cmd命令行下,查看ant是否安装好。 (C:\USER\> ant -version)
4、找到 刚解压的tomcat-8.0.26的路径,
,修改路径下的build.properties.default文件,(通常修改文件名为build.properties)。
找到 71行 左右:base.path=/usr/share/java 为base.path="源码路径/repository" (可自定义),在构建项目的时候,会下载一些依赖包 会下载到这个目录中。
4、在cmd命令行中, 进入刚解压的tomcat8.0.26的源码下的文件夹下, 输入命令 ant 。构建开始……
5、构建完成后,目录下 会生成 两个文件夹 output 和 repository。
6、打开eclipse。新建一个 java项目 apache-tomcat-8.0.26。右键src文件夹,import > file system 选择源码路径
选择java文件夹和test文件夹。
7、在java项目中选择java和test 右键 build path > use as source folder 。
8、此时项目中会有很多红叉,因为缺少相应的依赖jar包。在java项目下新建 lib(用于存放其他依赖jar包)文件夹,conf(用于存放tomcat配置)文件夹。
9、下载依赖jar包 。 (http://pan.baidu.com/s/1dDz1FMD)。添加至lib文件夹下,然后build path。同时,添加junit4。将源码下conf的内容拷到项目conf文件夹下。
10、添加完后,还有一些错误,手动修改下(注释掉)……(具体原因,没研究...)
11、找到org.apache.catalina.startup.Bootstrap.java, 然后 Run as Java Application.
完
eclipse 编译tomcat8.0.26的源码的更多相关文章
- spring5.0.2.RELEASE源码环境构建
Spring5 源码下载注意事项 首先你的JDK 需要升级到1.8 以上.Spring3.0 开始,Spring 源码采用github 托管,不再提供官网下载链接.大家可自行去github 网站下载, ...
- Android7.0 Phone应用源码分析(三) phone拒接流程分析
本文主要分析Android拒接电话的流程,下面先来看一下拒接电话流程时序图 步骤1:滑动按钮到拒接图标,会调用到AnswerFragment的onDecline方法 com.android.incal ...
- 解决AndroidKiller APK 反编译失败,无法继续下一步源码反编译!
报错背景 今天使用AndroidKiller V1.3.1,反编译一个APK,遇到如下报错: 当前 Apktool 使用版本:Android Killer Default APKTOOL 正在反编译 ...
- .NET Core 3.0之深入源码理解Startup的注册及运行
原文:.NET Core 3.0之深入源码理解Startup的注册及运行 写在前面 开发.NET Core应用,直接映入眼帘的就是Startup类和Program类,它们是.NET Core应用程 ...
- C#代码反编译 得到项目可运行源码
C#代码反编译 得到项目可运行源码 摘自:http://www.cnblogs.com/know/archive/2011/03/15/1985026.html 谈到"C#代码反编译&quo ...
- Android7.0 Phone应用源码分析(二) phone来电流程分析
接上篇博文:Android7.0 Phone应用源码分析(一) phone拨号流程分析 今天我们再来分析下Android7.0 的phone的来电流程 1.1TelephonyFramework 当有 ...
- Android7.0 Phone应用源码分析(一) phone拨号流程分析
1.1 dialer拨号 拨号盘点击拨号DialpadFragment的onClick方法会被调用 public void onClick(View view) { int resId = view. ...
- robotlegs2.0框架实例源码带注释
robotlegs2.0框架实例源码带注释 Robotlegs2的Starling扩展 有个老外写了robotleges2的starling扩展,地址是 https://github.com/brea ...
- 购买的wemall 6.0商城系统源码分享
使用方法 1.解压目录 2.cd wemall6 && npm i 3.配置config下的config.json 4.npm start 摒弃以往的开发框架thinkphp,使用no ...
随机推荐
- Visual Studio 2012安装VASSISTX插件后导致CPU高的解决的方法
笔者一直都喜欢用VAX插件来做C++的开发,但发现VS2012安装了VAX后,CPU占用超级高,有时界面卡死得很厉害.我卸了又装,升级最新版,都无论用. 直到有天.看到网友说:VS2012的sdf文件 ...
- Google POI下载工具破解之路
我是GIS初学者,爱好二次开发,像初恋一样.最近对编译感兴趣,每当成功获取一点信息,就有一种快感,感觉马上就要成功了……其实,还早! 01.初次反编译 今天在微创业工作室找到了Google POI下载 ...
- 【树莓派】-bash: /usr/local/java/jdk1.8.0_161/bin/java: cannot execute binary file: Exec format error
遇到这样的问题:-bash: /usr/local/java/jdk1.8.0_161/bin/java: cannot execute binary file: Exec format error ...
- tftp的安装、设置以及put、get传输实验
tftp安装流程如下: (1)首先挂载Linux系统镜像文件到/media/cdrom/的(cdrom为在/media/下自己创建的目录) (2)进入/media/cdrom/Server/可以找到t ...
- Java之字节码(1) - 深入解析
转载地址 一:Java字节代码的组织形式 类文件{ OxCAFEBABE,小版本号,大版本号,常量池大小,常量池数组,访问控制标记,当前类信息,父类信息,实现的接口个数,实现的接口信息数组,域个数,域 ...
- 【Redis】redis+php处理高并发,很好的教程||附上 php的文件锁
链接至:http://blog.csdn.net/nuli888/article/details/51865401 很好的教程,其中redis+php有点小问题. 附上php文件锁: $fp = fo ...
- mybatis实战教程(mybatis in action)之四:实现关联数据的查询
有了前面几章的基础,对一些简单的应用是可以处理的,但在实际项目中,经常是关联表的查询,比如最常见到的多对一,一对多等.这些查询是如何处理的呢,这一讲就讲这个问题.我们首先创建一个Article 这个表 ...
- Java中Math类的几个四舍五入方法的区别
JAVA取整以及四舍五入 下面来介绍将小数值舍入为整数的几个方法:Math.ceil().Math.floor()和Math.round(). 这三个方法分别遵循下列舍入规则:Math.ceil()执 ...
- storm trident merger
import java.util.List; import backtype.storm.Config; import backtype.storm.LocalCluster; import back ...
- C#中各种集合类比较
数组(Array)的不足(即:集合与数组的区别) 1. 数组是固定大小的,不能伸缩.虽然System.Array.Resize这个泛型方法可以重置数组大小,但是该方法是重新创建新设置大小的数组,用的是 ...