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 ...
随机推荐
- eclipse中android开发怎么修改xml文件字体大小
windows->preference->General->appearence->Colors and Font->Basic->Text Font.点击右侧的E ...
- iOS 真机调试多台mac电脑共用一个证书
大致流程:在你的开发电脑上导出一个 p12文件,以及在 apple开发者中心下载一个profile文件,把这两个文件导出给你的mac开发友就行了 打开 mac 钥匙工具-----找到你的证书---- ...
- 改善C#程序的建议2:C#中dynamic的正确用法
dynamic是FrameWork4.0的新特性.dynamic的出现让C#具有了弱语言类型的特性.编译器在编译的时候不再对类型进行检查,编译期默认dynamic对象支持你想要的任何特性.比如,即使你 ...
- HDU1823-Luck and Love-二维线段树(模板)
题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=1823 好吧,给这题跪了. ..orz.... 一道非常基础的二维线段树的模板题: 可是细节非常多:尤 ...
- windows+Linux【Composer安装指定版本laravel】
在windows下安装的方法:(php.ini中openssl.dll扩展必须打开,且版本>=5.4) 方法一:使用安装程序 这是将 Composer 安装在你机器上的最简单的方法. 下载并且运 ...
- 多语言 SEO
https://productforums.google.com/forum/?hl=zh-CN#!topic/webmaster-zh-cn/I0MMsm737pc
- TCP/UDP,SOCKET,HTTP,FTP 简析
(一)TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议 传 ...
- 数据库入门级面试题(带答案) 数据库简单面试题(带答案) MySQL面试题带答案
数据库入门[mysql] 1.假设要按照分页(每页显示10条)的形式获取test表中的数据,在MySql数据库中,以下哪条语句是取第2页中的数据?(单选) (难度A) A.select * f ...
- spring in action 7.1 小结
0 AbstractAnnotationConfigDispatcherServletInitializer剖析,在Servlet 3.0环境中,容器会在类路径中查找实现ServletContaine ...
- for循环中 i++和++i 是否有区别?
正常情况下 i++和++i是有区别的: 前者是:先引用,后增加, 后者是:先增加,后引用, 但是在for循环中: for(var i=0;i<10;i++){ System.out.print ...