IntelliJ IDEA 15.0.2   >   Tomant7.0.69   >   源码环境搭建




由于目前的工作内容调整,及重新进行职业规划,预备进行Tomcat源码学习。

对 Tomcat 源码学习的第一步,进行了以下总结:




一、准备资源:

    1、Java的IDE工具使用:IntelliJ IDEA 15.0.2 版本

    2、Tomcat源码使用:apache-tomcat-7.0.69-src.zip 版本

    3、使用Maven环境:apache-maven-3.0.4 版本

    4、JDK环境:使用 jdk1.7.0_51 版本


二、环境搭建

    1、准备Tomcat源码环境

         a、解压tomcat7.0.69源码压缩包

         b、将tomcat7.0.69转换为Maven工程,添加 pom.xml 文件 -- 详见附件【pom.xml】

         c、在Tomcat7.0.69的源码根目录下,新建 catalina-home 目录,作为Tomcat的运行目录

         d、将 conf、logs、webapps、work 文件夹,移入 catalina-home 目录

         ----- 目录大体结构如下:

         --- Tomcat 7.0.69 

         

           --- catalina-home 目录

       wKiom1c4faei9cwMAAAFdhr_8dU179.png      


    2、导入 Tomcat 7.0.69 工程

         a、Import Project

          


          基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第1张图片


          


         b、配置 Maven:File > Settings  搜索“maven”          

基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第2张图片


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第3张图片


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第4张图片


         c、配置JDK :File > Project Structure


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第5张图片


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第6张图片


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第7张图片

 

         d、设置启动 : Run > Edit configurations... > Application

         需要设置 name、main class、vm options

         name -- 自己起个名字就好;

         main class -- org.apache.catalina.startup.Bootstrap

         vm options -- -Dcatalina.home="C:\WorkSpaces\IntelliJ_IDEA\apache-tomcat-7.0.69-src\catalina-home"

         


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第8张图片

         

         e、(Maven)编译依赖范围 : 右侧 Maven Project 菜单,执行 compile 命令编译项目

基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第9张图片         

        

            f、启动:maven compile执行成功,点击 “Tomcat_7.0.69_Run”启动即可                

基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第10张图片


基于IntelliJ IDEA 15.0.2的Tomcat7.0.69源码运行环境搭建_第11张图片



         

三、FAQ:

    1、注意这里使用的是Tomcat 7.0.69版本,与之前的Tomcat7版本可能有所不同,这里需要使用jdk1.7版本

    2、注意Tomcat源码解压后也许没有logs目录,自己新建即可;

    3、注意编译如果遇到ClassNotFoundException或者jar包不存在等类似问题,确认pom文件中的版本是否符合

你当前的项目内容(我提供的也许不是100%最合适);

    4、在Tomcat 7.0.69版本源码部署时,遇到了【TestCookieFilter.java】类报错,查询一大圈后无果,果断删除

(备份删除,不影响全局);

    5、【examples】目录下的类也会报错,我没有找到特别好的解决办法,按照网友的建议,该目录直接删除(备份删除)。


PS : 对于此源码学习,我亦为初学者,如有不对之处,请各位大神不吝赐教。