1、安装Ant

Ant下载地址:http://ant.apache.org/bindownload.cgi

下载完成以后,解压到相应目录,例如我解压到了D:\open-soft\apache-ant-1.9.6文件夹

然后配置Ant的环境变量,增加 ANT_HOME 为D:\open-soft\apache-ant-1.9.6\

然后在path中增加 ;%ANT_HOME%\bin;

或者直接在path中增加;D:\open-soft\apache-ant-1.9.6\bin;

然后在cmd里面输入 ant -version

出现 Apache Ant(TM) version 1.9.6 compiled on June 29 2015

代表ant配置成功

2、下载tomcat8源码

tomcat8源码的下载地址为:http://tomcat.apache.org/download-80.cgi

然后找到源码下载的地方

下载下来是zip文件,解压到自己的目录,我解压到了 D:\open-source\tomcat\apache-tomcat-8.0.33-src 目录下

3、编译

在apache-tomcat-8.0.33-src目录下,新建build.properties文件,配置编译信息

base.path=D:/open-source/tomcat/apache-tomcat-8.0.33-src/tomcat-build-libscompile.source=1.8
compile.target=1.8
compile.debug=true

以上的意思是把依赖包下载到 D:/open-source/tomcat/apache-tomcat-8.0.33-src/tomcat-build-libs 目录下

编译使用jdk1.8版本

然后打开cmd,进入D:\open-source\tomcat\apache-tomcat-8.0.33-src目录

然后运行 ant 命令,这样会自动的下载相关依赖

tomcat本身不是由eclipse构建,所以这个需要转化为eclipse项目,我们通过运行 ant -p命令,可以看到有一个 ide-eclipse的东东

非常欣喜,这个直接提供了更改为eclipse项目的命令

运行 > ant ide-eclipse 命令 ,开始下载相关依赖,在下载的时候出现以下错误

estexist:[echo] Testing  for D:/open-source/tomcat/apache-tomcat-8.0.33-src/tomcat-build-libs/objenesis-1.2/objenesis-1.2
.jar

setproxy:

downloadzip:[get] Getting: https://objenesis.googlecode.com/files/objenesis-1.2-bin.zip[get] To: D:\open-source\tomcat\apache-tomcat-8.0.33-src\tomcat-build-libs\download-1232272642.zip[get] Error getting https://objenesis.googlecode.com/files/objenesis-1.2-bin.zip to D:\open-source\tomcat\apach
e-tomcat-8.0.33-src\tomcat-build-libs\download-1232272642.zipBUILD FAILED
D:\open-source\tomcat\apache-tomcat-8.0.33-src\build.xml:2816: The following error occurred while executing this line
:
D:\open-source\tomcat\apache-tomcat-8.0.33-src\build.xml:2920: java.net.SocketException: Connection reset

实际上就是跑到Google去下载objenesis-1.2.jar,但是大家都懂的,咱们是连接不上 ,哭,只能自己单独下载这个jar包,然后再建立相应的文件夹,我是从阿里云的maven的服务器上进行下载的,下载下来以后在tomcat-build-libs      目录下建立objenesis-1.2文件夹,然后把下载的objenesis-1.2.jar放进去,然后再运行 ant idea-eclipse命令,出现

BUILD SUCCESSFUL
Total time: 1 second

这时候在源码目录下生成了.classpath 和.project文件,这两个文件我们大伙就非常熟悉啦,就是eclipse的工程描述文件

搞定!

4、导入

打开eclipse,File->import->existing Projects into workspace,找到源码录入,然后finish即可。

源码导入以后 上面有项目上有红色的叹号,这个是因为 缺少相关jar包导致,在Java Build Path下发现不存在的jar

这种是找的相关路径,找不到,需要自己手工的把jar导入进去 Add External JARs,这些jar都在刚才配置的下载路径下。导入完成以后,把上面图片中的jar的依赖全部删除,这时候项目上的红色叹号就没有了

5、run

默认的情况下,生成了start-tomcat和stoptomcat,在 debug->debug Configurations->java application中,我们只需要 直接运行start-tomcat

运行成功以后,在浏览器中输入localhost:8080,可以看到tomcat的管理台界面。

ok!到此tomcat的源码就跑起来了,开始我们愉快的源码分析之旅吧。

eclipse导入tomcat 8.0x源码相关推荐

  1. 如何在eclipse中导入别人发的源码

    如何在eclipse中导入别人发的源码 1.先新建一个project,如果要导入的源码是属于某个package的,那么在新的project下新建一个同名的包. 2.在package上右击选择impor ...

  2. tomcat源码分析_百战卓越108天tomcat和servlet源码分析

    训练大纲(第105天) 大家如果想快速有效的学习,思想核心是"以建立知识体系为核心",具体方法是"守破离".确保老师课堂上做的操作,反复练习直到熟练. 第209 ...

  3. 深入理解Tomcat和Jetty源码之第二篇servlet规范和servlet容器

    深入理解Tomcat和Jetty源码之第二篇servlet规范和servlet容器 思维导图总览 这篇推送主要讲servlet的规范和什么是servlet容器? 1.先来讲讲servlet规范: 2. ...

  4. 深入理解Tomcat和Jetty源码之第一篇前奏知识

    深入理解Tomcat和Jetty源码之第一篇前奏知识 这周开始对Tomcat和Jetty的源码和框架产生了浓厚的兴趣,接下来想记录一下学习Tomcat和Jetty源码的心得和体会,有兴趣的朋友可以关注 ...

  5. ardupilot java_基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建

    基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建 作者:Awesome 日期:2017-10-21 需准备的软件工具 Ardupilot飞控源码 PX4 toolchain JAVA ...

  6. Eclipse 导入 Tomcat 源码

    我的环境:Win10,Eclipse 4.8.0 Photon,JDK 10.0.2 1.下载Tomcat源码 我下载的是:apache-tomcat-9.0.12-src.zip 下载地址:http ...

  7. Eclipse导入Tomcat源码

    http://www.cnblogs.com/huangfox/archive/2011/10/20/2218970.html 想要研究下Tomcat的体系结构或者源码,最好将Tomcat的源码导入到 ...

  8. Tomcat可运行源码资源分享

    笔者从Apache官网下载Tomcat8源码压缩包后,手动修改配置文件,导入相关Jar包,最后封装成可运行文件. 真正读懂Tomcat运行机制,从读懂Tomcat源码开始!

  9. Idea导入MATSim项目-github源码版本

    简介 MATSim项目,官方网站上提供3种形式加载项目: MATSim官网:https://www.matsim.org/ maven依赖版本,获取MATSim主体项目发行版依赖,可获取源码快照,进行 ...

最新文章

  1. Node.js开发环境的搭建
  2. 复习一个知识点——原、反、补码以及取反操作
  3. Fedora设置DVD为yum源
  4. Maven 多模块项目,多个root解决方法
  5. RadioGroup和RadioButton(单选框)
  6. [Linux基础环境/软件]Linux下安装resin web服务器(涉及gcc、jdk环境部署)
  7. 【TypeScript系列教程11】函数的使用
  8. 剑指offer面试题39. 数组中出现次数超过一半的数字(数组)(摩尔投票法)
  9. 凸优化第九章无约束优化 9.3 梯度下降方法
  10. 特大喜讯!鸿蒙项目来了:在线电子词典
  11. 详解:什么是VXLAN?
  12. 360VSQQ的精心之战
  13. 阿里云LOGO在线设计入口说明
  14. Java小游戏实操---大鱼吃小鱼 游戏开发
  15. 《指数基金投资指南》银行螺丝钉 ---读书
  16. Python爬虫技巧--selenium解除webdriver特征值
  17. android 读build.prop,Android系统下的build.prop文件
  18. ZYNQ启动流程之分析BootRoM
  19. 哪个软件能代替斐讯路由_斐讯路由器控制软件 4.2.1 去广告版 - 用手机管理斐讯路由器...
  20. c语言常量指数的正确表示,c语言常量的正确表示方法有哪些

热门文章

  1. Android N 多窗口的应用——画中画
  2. cuda编程python接口_CUDA共享内存问题(以及将CUDA与python / ctypes一...
  3. 手把手教你用plotly绘制excel中常见的16种图表(上)
  4. Excel表格如何设置密码 Excel2003/2007/2010设置密码教程
  5. SQL注入基础知识总结
  6. WPS用样式法自定义的方式自动生成目录
  7. WPS中如何自动生成文件目录
  8. 苹果手机打开python_苹果手机停用怎样打开有视频教程鸣? | python零基础入门视频免费...
  9. 统计图表-BigDecimal-换算百分比-加一起不满足100%
  10. Siege多线程编程最佳实例微信约战斗牛网站搭建