1、下载tomcat源码。建议下载最新版本tomcat9。

svn地址:http://svn.apache.org/repos/asf/tomcat/tc9.0.x/branches/gsoc-jaspic

2、由于tomcat采用ant编译。故需下载ant。如果已经下载此工具,则直接跳过。

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

3、环境变量设置。把ant的安装目录添加到path里。

4、进入到tomcat的源码目录。我的本地目录就是:E:\Development\tomcat9\gsoc-jaspic。

5、执行命令:ant ide-eclipse.会下载依赖的包。会有点慢。

如果出现如下错误:

(例如:Getting: https://objenesis.googlecode.com/files/objenesis-1.2-bin.zip

E:\Development\tomcat9\gsoc-jaspic\build.xml:2839: The following error occurred while executing this line:
E:\Development\tomcat9\gsoc-jaspic\build.xml:2943: java.net.ConnectException: Connection timed out: connect)

这个是因为网络超时造成的。

解决办法:FQ下载objenesis-1.2-bin.zip

(1)复制一份tomcat9 下build.properties.default 文件并重名为build.properties

(2)打开build.properties 修改base.path=E:/Development/tomcat9/repository/tomcat-build-libs  , 在E:/Development/tomcat9/repository 下建一个目录tomcat-build-libs 这个目录是tomcat 在编译是用来保存其依赖的 库文件。

(3)由于在build.properties 中 objenesis.loc=https://objenesis.googlecode.com/files/objenesis-${objenesis.version}-bin.zip 中这个链接无法下载 ,所以为了预防编译是出错 最好先下载objenesis-1.2-bin.zip这个文件。

(4)下载这个文件后, 我为了方便 在机器上起了个tomcat服务 并把这个文件放到了tomcat  下 webapps/ROOT 主目录中 ,那么 可以在build.properties 中修改

objenesis.loc=http://localhost:8088/objenesis-1.2-bin.zip。

(5)再次执行ant ide-eclipse这个时候ant会从http://localhost:8088/下载objenesis-1.2-bin.zip这个文件。

6、这个时候再源码目录就能看到.project,.classpath。

7、打开eclipse。导入源码。

8、修改classpath的jdk路径。另外修改source中的default output folder

9、如发现未编译,可在eclipse里面添加lib变量
导入项目以后你会发现有几个错误导致不能编译,其实是缺少lib变量:
ANT_HOME, 指向ant的安装目录
TOMCAT_LIBS_BASE,指向依赖库的位置,如果你还没有在E:\Development\tomcat9\gsoc-jaspic下执行:ant来build和deploy这个项目,就先执行它。这样它就会下载需要的lib。

NT_HOME和TOMCAT_LIBS_BASE环境变量添加好之后,eclipse会提示你重新build项目,之后就会没有错误了。

10、 右击org.apache.catalina.startup.Bootstrap  Run As -- Java application。它会自动搜索项目中的所有main函数,你选择org.apache.catalina.startup.Bootstrap的main函数就是。 选择好了之后,你也许会看到有tomcat-start和tomcat-stop两个启动项让你选择,在run configuration的配置里面的Common tab里面你还可以设置选中debug,从而你可以在debug菜单下显示它了。弹出下面的框。

11启动好以后你可以打开下面的网址:http://localhost:8080/

原文地址:http://blog.csdn.net/u012921921/article/details/51921377

Tomcat9源码编译及导入Eclipse(转)的更多相关文章

  1. Hadoop,HBase,Zookeeper源码编译并导入eclipse

    基本理念:尽可能的参考官方英文文档 Hadoop:  http://wiki.apache.org/hadoop/FrontPage HBase:  http://hbase.apache.org/b ...

  2. Tomcat8源码编译及导入Eclipse中研究

    最近因为需求需要修改Tomcat中的某些功能,无奈只能研究那部分源码然后稍作修改. 目前Tomcat最新版是8.0,下载了源码包,编译并导入Eclipse中研究比较方便. 1. Tomcat8源码编译 ...

  3. Hadoop2.5.2源码编译及导入Eclipse

    前言:由于官网提供的64位hadoop是没有编译的,所以当我们用到64位的hadoop时,需要在自己的64位linux系统上编译hadoop源码.另外,要想在eclipse里查看hadoop源码,修改 ...

  4. 琐碎-将hadoop源码作为工程导入eclipse

    之前写过如何用eclipse看hadoop源码,虽然非官方版的,但是可以达到目的,最重要是简单方便快速 官方版(hadoop2.2.0)的也有: 源码目录为: 和之前的源码目录有很大的不同 编译的时候 ...

  5. spring-framework源码编译及导入

    环境说明: 时间:2017-09-26 OS name: "mac os x", version: "10.12.4", arch: "x86_64& ...

  6. 将Spring源码转换为工程 + 导入Eclipse时缺失jar包

    将源码转换为工程: 比如查看Spring事务部分的源码. 打开cmd窗口,切换到Spring-tx文件夹下,执行命令 “gradle cleanidea eclipse” . 缺失jar包: 第一步: ...

  7. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  8. spark最新源码下载并导入到开发环境下助推高质量代码(Scala IDEA for Eclipse和IntelliJ IDEA皆适用)(以spark2.2.0源码包为例)(图文详解)

    不多说,直接上干货! 前言   其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来. 本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程. ...

  9. IDEA导入tomcat9源码跑起来~

    如题,这里记录一下用IDEA导入tomcat9的源码,并跑起来.看了本教程你还是不会的话直接问我. 一.环境安装以及目录搭建 tomcat9源码下载地址:http://mirrors.hust.edu ...

随机推荐

  1. Excel 函数记录

    1.四舍五入:round(数据,小数位数)

  2. 引用CSS文件到html网页里方法

        引用CSS文件到Html方法-css引入,css引用 使用不同的方法来引用css样式表,最终到达的效果相同,但是使用不同方法应用的css文件将影响到SEO及网页打开速度效率. html引用cs ...

  3. js中Array自定义contains, indexOf, delete方法.

    Array.prototype.contains = function (elem) { for (var i = 0; i < this.length; i++) { if (this[i] ...

  4. Gramar

    一.And 并列关系(and) in addition / and / similarly / likewise / as well as / besides / furthermore / also ...

  5. 伪命题:PHP识别url重写请求

    手上有一个网站,然后启用了伪静态,因为一些设置上的原因,一段时间后,发现收录的都是.php的文件,而启用的伪静态地址则收录很少,在更改设置后,想尽快去掉.php的收录,然后想将.php的地址转向.ht ...

  6. [css3]搜索框focus时变长

    结构: <form class="demo-a">    <input placeholder="Search" type="sea ...

  7. discuz 系列产品 在ie9下注册成功后不跳转bug处理

    header.htm 把 <meta http-equiv="x-ua-compatible" content="ie=7" /> 改为 <m ...

  8. node cheerio

    所谓工欲善其事,必先利其器,所以通读了cheerio的API,顺便翻译了一遍,有些地方因为知道的比较少,不知道什么意思,保留了英文,希望各位不吝告诉我,然后一起把这个翻译完成. ###cheerio ...

  9. Service相关--读书笔记

    2013-12-30 18:16:11 1. Service和Activty都是从Context里面派生出来的,因此都可以直接调用getResource(),getContentResolver()等 ...

  10. HMM TOOL

    HMM隐马尔科夫模型 MATLAB 工具包对各种数据的处理 HMM 工具包下载地址: http://www.cs.ubc.ca/~murphyk/Software/HMM/hmm.html 工具包使用 ...