通过学习和爬坑,将tomcat8源码以maven方式导入eclipse

总结下这两天tomcat8源码导入eclipse

  •    java: 1.8.0.161
  •    eclipse: 4.4.2 luna
  •    tomcat8: 8.0.50

   (1)tomcat8-src官方下载,并解压
        新增pom.xml 以下4个jar必须要有        

        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.9.9</version>
        </dependency>
        <dependency>
            <groupId>javax.xml</groupId>
            <artifactId>jaxrpc</artifactId>
            <version>1.1</version>
        </dependency>
        <dependency>
            <groupId>wsdl4j</groupId>
            <artifactId>wsdl4j</artifactId>
            <version>1.6.3</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.jdt.core.compiler</groupId>
            <artifactId>ecj</artifactId>
            <version>4.6.1</version>
        </dependency>  

    以下两个是测试相关
        

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
        </dependency>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <version>3.4</version>
            <scope>test</scope>
        </dependency>

   同时,这里只有需要将以下4个目录作为source folder:

  •     java,test 作为source folder
  •     webapps/examples/WEB-INF/class设置为source folder
  •     test/webapp/WEB-INF/classes设置为source folder

综上,新增pom.xml文件后,再将以上四个文件夹设置成source folder即可。

开始捣鼓半天,看到各种说法,虽然都能不报错,但是始终在运行bootstrap.java的main方法时,由于exam项目中一直报

 listeners.ContextListener listeners.SessionListener  async.AsyncStockContextListener 找不到,网上有一种说法是将example项目删除,但是这样就没有了localhost:8080后的 tomcat经典页面,作为有点强迫症的我当然不能就这样,好在最终在https://my.oschina.net/itblog/blog/1528123这里找到了答案。

      其实只要eclipse能搜索到java就可以,设置为Source folder才是关键。

      作为tomcat源码学习的前提,接着就是源码的学习了,记录下。

猜你喜欢

转载自my.oschina.net/u/3433152/blog/1634934