最近想写几篇关于jsp底层原理的文章,感觉还是从源码入手比较好。想了想还是从tomcat源码开始吧。从网上找了几篇关于ant的文章看了看,感觉还行,因为编译tomcat必须要了解ant方面的知识的。不说废话了,现在开始。 1.       在myeclipse6中 用SVn从http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_0/   checkout 出tomcat6源码  检出的项目名称为tomcat6 ,我的工作空间位置是 D:\myEclipse6Tomcat6_20100429  
    
   上图是检出源码后的目录,现在并没有lib,share 和output这几个个目录,这个目录是编译后才生成的。 1.       安装ant ,这个就不说了网上有的是资料2.       把tomcat6 这个目录拷贝到一个尽量简单的目录 我的是c:\tomcat63.       复制一份tomcat6 下build.properties.default 文件并重名为build.properties4.       打开build.properties 修改base.path= c:/tomcat6/share  , 在c:\tomcat6 下建一个目录share 这个目录是tomcat 在编译是用来保存其依赖的 库文件。5.  由于在build.properties 中  jdt.loc=http://sunsite.informatik.rwth-aachen.de/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip 中这个链接已经失效 ,所以为了预防编译是出错 最好先下载 eclipse-JDT-3.2.zip 这个文件 ,当时找这个文件可费了一番功夫 。在我写这篇文章是的有效链接地址为 http://archive.eclipse.org/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip 这个文件将近20M 。 6.下载这个文件后, 我为了方便 在机器上起了个tomcat服务 并把这个文件放到了tomcat  下 webapps\ROOT 主目录中 ,那么 可以在build.properties 中修改  jdt.loc= http://localhost:8080/ eclipse-JDT-3.2.zip 这是为了防止 在编译时再从网上下载 我想出的笨办法,如果你的网速快的话可以修改为jdt.loc=http://archive.eclipse.org/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip这样也行。7.  下一步就是编译你的机器上最好装有jdk1.5 ,最好设有JAVA_HOME 这个path,这是为了防止不必要的错误。8.  在命令行下  键入 cd c:\tomcat6  切换到 tomcat6 目录中 后运行 ant downloadAnt会自动把tomcat6所依赖的包下载到 c:\tomcat6\share 目录中并自动解压如果提示成功的话,在此可能有好多警告,不必理会。 9.  如果上诉过程成功的话那么恭喜你了,至少我当时是在上个步骤被折磨的不轻下边继续在命令行中键入 ant ,开始编译。11.编译成功后把这个目录拷贝到D:\myEclipse6Tomcat6_20100429刚开始建的工作空间中并覆盖从svn上down下的代码12.在tomcat6 中新建一个文件夹lib用来保存以下文件ant.jar (请在ant安装目录的lib子目录中拷贝)  commons-collections-3.1.jar (从刚才Ant下载的commons-collections-3.1子目录中拷贝)  commons-dbcp-1.2.1.jar(从刚才Ant下载的commons-dbcp-1.2.1子目录中拷贝)  commons-logging-1.1.jar(如果您本机没有这个jar包,请从http://commons.apache.org/downloads/download_logging.cgi处下载)  commons-pool-1.2.jar(从刚才Ant下载的commons-pool-1.2子目录中拷贝)  org.eclipse.jdt.core_3.2.0.v_671.jar(从刚才Ant下载的eclipse\plugins子目录中拷贝)  把以上文件拷贝到lib文件夹中,并把这些jar文件加入到tomcat6 项目的classpath中13. 在myeclipse中选择window-》Preference-》MyEclipse-》server-》tomcat-》Tomcat6.x-》   这个过程应该很简单 就是平时配置tomcat的过程完成以上过程 会在 servers视图中出现 tomcat6.x  然后在org.apache.catalina.startup. Bootstrap 的main方法中设几个断点,以debug模式启动tomcat6 就可以调试tomcat了。  错误处理:Ant错误 1 downloadzip:  [get] Getting: http://sunsite.informatik.rwth-aachen.de/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip [get] To: D:\carl_wu\tomcat\share\file.zip [get] Error opening connection java.io.FileNotFoundException: http://sunsite.informatik.rwth-aachen.de:3080/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip  [get] Error opening connection java.io.FileNotFoundException: http://sunsite.informatik.rwth-aachen.de:3080/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip  [get] Error opening connection java.io.FileNotFoundException: http://sunsite.informatik.rwth-aachen.de:3080/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip  [get] Can't get http://sunsite.informatik.rwth-aachen.de/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip to D:\carl_wu\tomcat\share\file.zip  BUILD FAILED  D:\carl_wu\tomcat\src\build.xml:554: The following error occurred while executing this line:  D:\carl_wu\tomcat\src\build.xml:514: Can't get http://sunsite.informatik.rwth-aachen.de/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip to D:\carl_wu\tomcat\share\file.zip  出现这个错误请参照第6和第7步 还有其他错误可能是因为你ant安装错误,或jdk安装错误,建议jdk使用1.5并在环境变量中加入 JAVA_HOME这个变量,这样出错机会可能小点。  以下是我上传的编译后项目的地址,我的文件上传权限只有15m,所以分成了4个文件,下载后解压导入到myeclipse中 按照第13步配置后就可以用了 http://download.csdn.net/source/2301411 这是第一部分 http://download.csdn.net/source/2301430 第二部分 http://download.csdn.net/source/2301442 第三部分 http://download.csdn.net/source/2301452      第四部分 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/xuejianxinokok/archive/2010/04/29/5544068.aspx