Tomcat9源码编译及导入Eclipse(转)

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 omcat9gsoc-jaspic。

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

如果出现如下错误:

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

E:Development omcat9gsoc-jaspicuild.xml:2839: The following error occurred while executing this line:
E:Development omcat9gsoc-jaspicuild.xml:2943: java.net.ConnectException: Connection timed out: connect)

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

解决办法:翻墙下载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 omcat9gsoc-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

原文地址:https://www.cnblogs.com/rainy-shurun/p/5834149.html