从b源码b安装tomca.doc_第1页
从b源码b安装tomca.doc_第2页
从b源码b安装tomca.doc_第3页
从b源码b安装tomca.doc_第4页
从b源码b安装tomca.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

从源码安装tomcat 6.0.18注意事项:JDK用1.61 安装Subversionl 下载地址: /servlets/ProjectDocumentList?folderID=91 l 当然,如果您想从Eclipse中直接导入Tomcat源代码,请从/update_1.0.x下载Subversion插件,即可导入Tomcat源代码。l 安装完成后,请在MS-DOS窗口中键入svn export help,验证是否安装成功2 下载Tomcat6.0的源代码 l Tomcat源代码的版本控制工具不是CVS,而是Subversion,l 在MS-DOS下键入: svn export /repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_18/ G:tomcat_6.0.18src这个命令的意思是把Tomcat6.0.18的源代码从Subversion库中导入到本机的G:tomcat_6.0.18src目录,l 下面是源代码的目录结构,从这个目录结构中,我们可以看出该项目的开发者使用的IDE是Eclipse,因为我们看到了熟悉的.project及.classpath文件。bin脚本文件confxml和properties配置文件javaJava源码文件res资源文件比如说图片文件,ini文件及其它的一些静态资源文件test测试源代码3 安装Ant请从/bindownload.cgi 处下载并安装4 下载依赖项目 l Tomcat以Ant作为编译工具l 修改perties找到Tomcat的源代码中的perties.default文件,将该文件复制到perties,然后打开perties,找到下面这行: base.path=/usr/share/java 将它改为: base.path= G:/tomcat_6.0.18/src/share 在Tomcat编译过程中,Ant会让我们下载一些必要的依赖项目,base.path目录就是用来保存这些项目文件的,我们可以将这个属性指向一个已经存在的目录。l 修改完base.path后,我们回到MS-DOS窗口,切换到Tomcat源代码所在目录,然后运行ant download命令 cd G:tomcat_6.0.18src c:apache-ant-1.7.1binant download一分钟未到,Ant就告诉我们一个错误并提示我们编译失败,就是找不到rmatik.rwth-aachen.de/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip 文件。Tomcat的编译和Eclipse的JDT有什么关系?是因为Tomcat是在Eclipse下开发的,所以需要Eclipse的JDT(Java Development tooling)插件来编译Tomat源代码。既然找不到,我们只好自己动手,上Google一搜,马上发现这个文件的有效下载地址为:/eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zip。我们打开刚才的perties文件,将其34行修改为: jdt.loc= /eclipse/downloads/drops/R-3.2-200606291905/eclipse-JDT-3.2.zipTomcat 6.0.0需要改这个,Tomcat 6.0.18不需要改这个选项了l 修改保存perties文件后,重新开始ant download任务。这次我们等的时间较长,因为eclipse-JDT-3.2.zip大约有19M,下载需要一段时间。编译成功,虽然编译器给出几个警告。BUILD SUCCESSFULTotal time: 15 minutes 17 secondsl 这时我们可发现刚才创建的base.path目录(G:tomcat_6.0.18srcshare)中已经下载了6个依赖项目,它们都是Tomcat编译所必须的。 l 配置代理修改perties文件:添加如下内容proxy.host=proxy.port=808proxy.use=on5 编译请在MS-DOS窗口内键入ant并回车,c:apache-ant-1.7.1binantAnt将在2分钟内编译1000多个源文件并将Tomcat部署到output目录。编译顺利完成后,请打开Tomcat的源代码目录,会发现多了一个output目录,这是Ant的编译后的输出目录。BUILD SUCCESSFULTotal time: 1 minute 31 seconds6 运行tomcat请打开Tomcat源代码的outputbuildbin子目录,双击startup.bat文件,我们即可成功启动Tomcat6.0,此时我们的编译工作就算顺利完成了。 :8080/7 导入源代码到Eclipse 7.1 新建一个Java项目请打开Eclipse,新建一个Java项目,请选择“Create project from existing source”, 并在Directory文本框内填入我们刚才下载的Tomcat源代码目录(i.e. G:tomcat_6.0.18src),然后点击“Next”直至结束。 7.2 指定库文件我们将会看到Eclipse拒绝编译,这是因为Eclipse找不到该项目指定的库文件。请右击该项目,在弹出菜单中选择“Properties”=“Libraries”,然后删除两个以TOMCAT_LIBS开头的两个库文件,只保留一个JRE库文件,然后点击“OK”按钮,这时Eclipse开始编译Tomcat源代码,但是发现一堆错误,这是因为我们没有为该项目添加编译所必须的Jar包。准备好Tomcat项目所必须的jar文件,其实,刚才我们运行ant download任务时,已经下载过这些jar文件包。 ant.jar (请在ant安装目录的lib子目录中拷贝)commons-collections-3.2.jar (从刚才Ant下载的sharecommons-collections-3.2-src子目录中拷贝)commons-dbcp-1.2.2.jar (从刚才Ant下载的sharecommons-dbcp-1.2.2-src子目录中拷贝)commons-logging-1.1.jar(如果您本机没有这个jar包,请从/downloads/download_logging.cgi处下载)commons-pool-1.2.jar (如果在刚才下载的sharecommons-pool-1.4-src的目录中找不到,可以执行这个命令来得到jar文件c:apache-ant-1.7.1binant build-jar)org.eclipse.jdt.core_3.3.1.v_780_R33x.jar (从刚才Ant下载的shareeclipseplugins子目录中拷贝)jaxrpc.jarwsdl4j-1.5.1.jar到/axis/下载。当我们准备好这些jar文件后,将这些文件拷贝到某一目录(比如说G:tomcat_6.0.18tomcat_lib目录),然后在Eclipse中新建一个User Libraries,我们将这个新建的User Libraries命名为TOMCAT_LIBS,并把这些文件加到TOMCAT_LIBS。然后将我们新建的TOMCAT_LIBS添加到Tomcat6项目。另外,别忘了把JUnit库也加到Tomcat6项目。这时Eclipse开始重新编译,编译过程顺利通过,所有错误均消失,此时Tomcat6项目的目录结构如下: 7.3 把test目录也加入到源代码中方法是在Eclipse中右击”test”目录,然后在弹出菜单中选择“Build path”=”Use as Source Folder”,之后我们会看到test目录上就多了个源代码的符号。 8 在Eclipse中运行Tomcat。请找到Tomcat的启动主类org.apache.catalina.startup.Bootstrap,右击这个类,在弹出菜单中选择“Run As”=”Open Run Dialog”,然后在弹出的“Run”窗口中填入程序运行参数“start”和JVM运行参数catalina.home, 程序运行参数: startJVM运行参数: -Dcatalina.home=G:tomcat_6.0.18src然后点击“Run”按钮,我们将会看到Tomcat正常启动。恭喜,咱们的Tomcat源码已经成功导入Eclipse,这时,9 调试Tomcat,请打开piler.Compiler类的源代码,在generateJava()方法的第一行打一个断点,然后在Eclipse的调试状态下运行Tomcat,等Tomcat运行后,打开我们的浏览器,在地址栏中输入http:/localhost:8080/examples/jsp/jsp2/el/basic-comparisons.jsp并回车,然后我们可观察到Eclipse此时切换至调试视图: 上面的小实验表明我们可以在Eclipse中通过Debugger观察Tomcat的内部运行机理。另外补充一点,上面的generateJava方法是将jsp动态编译至java class,这个方法只是在第一次请求或者Jsp源码发生变化时执行,如果您再次在浏览器中发送同样的请求,您将看不到上图的Debug界面,因为该方法不再执行。 10 其他JDK版本引起的问题报如下错误: javac C:tomcat_6.0.18srcsharetomcat6-depsdbcpsrcjavaorgapachetomcatdbcpdbcpdatasourcesPerUserPoolDataSource.java:52: org.apache.tomcat.dbcp.dbcp.datasources.PerUserPoolDataSource 不是抽象的,并且未覆盖 java.sql.Wrapper中的抽象方法 isWrapperFor(java.lang.Class)这是JDK版本1.6造成的。需要安装JDK版本1.5.安装1.5之后,原来的1.6不必卸载,为了把两个版本的JDK区别开,可以键入如下命令set path=C:Program FilesJavajdk1.5.0_06binset JAVA_HOME=C:Program FilesJavajdk1.5.0_06还有一点很有意思。Tomcat6以前版本的源代码分散在好几个子项目中,他们分别叫做jakarta

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论