zoukankan      html  css  js  c++  java
  • tomcat源码调试2

    前面对tomcat做了一些简单的认识,下面将tomcat源码调试环境搭建起来。

    可以参考官网的搭建方法,这里是按照网上的maven管理的方式搭建。

    大概步骤是:

    1.下载tomcat 9的源码,一般是下载页面最底部的tar包或zip包源码;

    2.然后解压在文件夹下新建pom.xml,内容大致如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    
        <modelVersion>4.0.0</modelVersion>
        <groupId>me.w1992wishes.tomcatwork</groupId>
        <artifactId>Tomcat9.0</artifactId>
        <name>Tomcat9</name>
        <version>9.0</version>
    
        <build>
            <finalName>Tomcat9</finalName>
            <sourceDirectory>java</sourceDirectory>
            <resources>
                <resource>
                    <directory>java</directory>
                </resource>
            </resources>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <encoding>UTF-8</encoding>
                        <source>1.8</source>
                        <target>1.8</target>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    
        <dependencies>
            <dependency>
                <groupId>org.apache.ant</groupId>
                <artifactId>ant</artifactId>
                <version>1.9.5</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ant</groupId>
                <artifactId>ant-apache-log4j</artifactId>
                <version>1.9.5</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ant</groupId>
                <artifactId>ant-commons-logging</artifactId>
                <version>1.9.5</version>
            </dependency>
            <dependency>
                <groupId>javax.xml.rpc</groupId>
                <artifactId>javax.xml.rpc-api</artifactId>
                <version>1.1</version>
            </dependency>
            <dependency>
                <groupId>wsdl4j</groupId>
                <artifactId>wsdl4j</artifactId>
                <version>1.6.2</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.jdt.core.compiler</groupId>
                <artifactId>ecj</artifactId>
                <version>4.4</version>
            </dependency>
        </dependencies>
    </project>
    

    3.接着导入idea,设置启动项:

    Main Class:org.apache.catalina.startup.Bootstrap;
    VM options:填写解压的tomcat路径;

     
     

    4.因为webapps下的应用有些配置加载出错,可以先将webapps里面的文件全部删除,自己新建一个demo文件夹,然后在里面新建一个index.html,并不影响源码阅读。

    5.JDTCompiler.java类中可能会有报错,有部分代码使用CompilerOptions.VERSION_1_9来判断java虚拟机版本,里面涉及1.9版本的jvm,如果识别不了,可以删掉。

    6.最后编译,运行,访问localhost:8080/demo。

    详过程可以参考这篇博文:



    作者:w1992wishes
    链接:https://www.jianshu.com/p/0f7ee366b1a4
    來源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 相关阅读:
    大数据全栈式开发语言 – Python
    史上最全的“大数据”学习资源(上)(山东数漫江湖)
    Hadoop大数据生态系统及常用组件(山东数漫江湖)
    Vue前端开发规范(山东数漫江湖)
    BTA 常问的 Java基础40道常见面试题及详细答案(山东数漫江湖))
    Spring 框架的设计理念与设计模式分析(山东数漫江湖)
    SSM三大框架整合详细总结(Spring+SpringMVC+MyBatis)(山东数漫江湖)
    深入理解Spring MVC(山东数漫江湖)
    Oracle中varchar,varchar2,nvarchar,nvarchar2的区别及其它数据类型描述
    再见,霍金
  • 原文地址:https://www.cnblogs.com/yaowen/p/9083553.html
Copyright © 2011-2022 走看看