1.搭建开发环境

a.下载好tomcat7源码包

b.安装好jdk7,及设置好环境变量

c.安装好ant,及设置好环境变量,用于预编译tocmat源码。

d.以上步骤准备好我们就可以开始进入源码的预编译了。

2.使用ant预编译tomcat7源码

a.进入tomcat7源码解压路径,修改“build.properties.default”文件名,去掉后面的".default"。

b.cmd进入tomcat7源码的解压路径,然后键入“ant”命令,ant会自动下载编译tomcat7源码的依赖包,如果用户不设置,系统默认下载的包路径会是当前盘符下面的“\usr\share\java”里面,

如果想设置自定义路劲的话,可以打开刚刚修改完成的“build.properties"配置文件,搜索“base.path”属性,设置为比如“base.path=e:/tomcat/lib”,然后cmd运行“ant”命令即可。

c.如果运行完成之后能在解压路径,看到有”output\build“文件夹,而且里面有生成了你熟悉的tomcat相关文件夹的话就算成功了。

3.使用Eclipse运行tomcat7源码

a.进入Eclipse新建一个普通java项目,比如这里叫做“tomcat7”。

b.新建完成之后,将tomcat7解压路径下面的“java"和“test"文件夹复制到刚刚新建好的tomcat7项目下面。

c.设置刚刚的“java”和“test”文件夹为源文件夹,右击项目-->Properties-->Java Build Path-->Source-->Add Folder,然后勾选上“java"和”test"两个文件夹。确定即可。

d.设置完成源文件夹之后,会看到两个源文件夹上面都有红色的小x,这是因为没导入需要的包,这里需要导入的包有:

ant.jar、jaxrpc.jar、org.eclipse.jdt.core_3.8.3.v20130121-145325.jar、wsdl4j-1.5.1.jar、junit.jar,前面四个jar包可以自行导入,最后的junit.jar可以直接在eclipse里面add external jars里面选择junit进行导入。

e.到这里需要搭建的都已经完成了,现在可以右击项目,run as --> run configurations ,然后main class 填写“org.apache.catalina.startup.Bootstrap”,然后在隔壁的“Arguments”里面的VM Arguments 里面填写

“-Dcatalina.home="E:/project/open/tomcat-TOMCAT_7_0_42/output/build",这里需要注意,这个具体路径根据自己的实际改写,我这里刚刚解压的路劲为e盘的这个路径所以使用了这个。

f.最后点击“RUN"运行项目,运行之后根据提示可以看到缺少了”conf”和“lib"文件夹,我们可以自行手动将tomcat的”conf”和“lib"拷到项目下面,然后再重复刚刚的步骤e。

g.这时候我们可以看到Eclipse的控制台里面已经输出了我们非常熟悉的tomcat启动完成的文字,然后我们在浏览器输入“localhost:8080"就可以看到tomcat的主页面了。

4.到了这里我们已经可以在Eclipse里面对tomcat的源码进行一番研究了。

【Tomcat】使用Eclipse运行Tomcat7源码的更多相关文章

  1. Eclipse运行Tomcat7源码

    1. 各环境版本: jdk1.6.0_45 (亲测jdk1.7.0_07会有问题,不要用1.7版本的) apache-ant-1.9.4 apache-tomcat-7.0.61-src 2. 安装a ...

  2. eclipse 导入tomcat7源码

    导入tomcat的源码其实说简单也不简单,说不简单也简单,主要还是环境问题,中间花费了我很多时间,网上找了很多都没什么用,参考一些文章,然后自己慢慢摸索出来的. 环境:(1)jdk:jdk1.6.0_ ...

  3. Eclipse中搭建Apache Tomcat7源码调试环境

    第一步:获取Apache Tomcat7源码,读者可以从Apache 官方网站获取,官方下载地址: http://tomcat.apache.org/download-70.cgi 注意选择Sourc ...

  4. 深入理解Tomcat系列之二:源码调试环境搭建(转)

    前言 最近对Tomcat的源码比较感兴趣,于是折腾了一番.要调试源码首先需要搭建环境,由于参考了几篇帖子发现都不怎么靠谱,最后还是折腾出来了,然而却花了足足一天的时间去搭建这个环境.发现都不是帖子的问 ...

  5. Tomcat7源码环境搭建

    一.下载Tomcat7源码 从官网上下载Tomcat源码,   http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.70/src/apache-t ...

  6. [tomcat7源码学习]初始化之catalina.home和catalina.base(转)

    我们在代码中为了获取某个配置文件路径下的文件经常会这么写 String tomcatPath = System.getProperty("catalina.home") + &qu ...

  7. Eclipse与Android源码中ProGuard工具的使用

    由于工作需要,这两天和同事在研究android下面的ProGuard工具的使用,通过查看android官网对该工具的介绍以及网络上其它相关资料,再加上自己的亲手实践,算是有了一个基本了解.下面将自己的 ...

  8. eclipse查看jdk源码,及反编译查看

    jdk中的包: dt.jar是关于运行环境的类库,主要是swing的包 tools.jar是关于一些工具的类库 rt.jar包含了jdk的基础类库,也就是你在java doc里面看到的所有的类的cla ...

  9. 框架源码系列五:学习源码的方法(学习源码的目的、 学习源码的方法、Eclipse里面查看源码的常用快捷键和方法)

    一. 学习源码的目的 1. 为了扩展和调优:掌握框架的工作流程和原理 2. 为了提升自己的编程技能:学习他人的设计思想.编程技巧 二. 学习源码的方法 方法一: 1)掌握研究的对象和研究对象的核心概念 ...

随机推荐

  1. 使用MIDAS访问远程Access数据库

    使用MIDAS访问远程Access数据库         Allen Tao(http://blog.csdn.net/allentao/) 2005-5-3 本文源码下载 访问远程数据库常用的办法是 ...

  2. java如何在函数中调用主函数的数组

    import javax.swing.JOptionPane; public class Test { /** * @zdz */ public static void main(String[] a ...

  3. mongoose post方法总结and疑点

    官方文档代码: var schema = new Schema(..); schema.post('save', function (doc) { console.log('this fired af ...

  4. iOS 开发 UI 搭建心得(一)—— 驾驭 StoryBoard

    本系列文章中,我们将一起认识.了解当下 iOS 开发中几种常见的 UI 构建方式,分析他们分别适合的使用场景,以便让我们在以后的开发中,能够在恰当的时间.场景下做出最佳的选择,提升开发效率,增强程序的 ...

  5. 选择器,$("A+B") 和$("A~B") 的理解

    在我发表这个理解之前,我有看过博客园 永恒浪子 大神的 JQuery选择器大全(http://www.cnblogs.com/hulang/archive/2011/01/12/1933771.htm ...

  6. BHO启动IE调试

    如下图选择Web Browser Debugger, 输入启动网址

  7. BZOJ 3533: [Sdoi2014]向量集( 线段树 + 三分 )

    答案一定是在凸壳上的(y>0上凸壳, y<0下凸壳). 线段树维护, 至多N次询问, 每次询问影响O(logN)数量级的线段树结点, 每个结点O(logN)暴力建凸壳, 然后O(logN) ...

  8. HDU 4498 Function Curve (分段, simpson)

    转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents    by---cxlove 最近太逗了...感觉成都要打铁了...只能给队友端 ...

  9. springmvc中关于静态资源的放行

    参考:http://blog.csdn.net/fujiakai/article/details/52504525 方法1. 修改web.xml文件,增加对静态资源的url映射,要加在org.spri ...

  10. codeforces 416B. Appleman and Tree 树形dp

    题目链接 Fill a DP table such as the following bottom-up: DP[v][0] = the number of ways that the subtree ...