Tomcat8.5源码安装过程

1、下载apache-tomcat-8.5.87-src源码包,解压以后新建文件夹 source,将 conf 和 webapps 放入。

2、新建 pom.xml 文件 (jdk 11)

<?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>org.apache.tomcat</groupId>
    <artifactId>apache-tomcat-8.5.87-src</artifactId>
    <name>Tomcat8.5</name>
    <version>8.5</version>

    <dependencies>
        <dependency>
            <groupId>org.easymock</groupId>
            <artifactId>easymock</artifactId>
            <version>3.4</version>
        </dependency>
        <dependency>
          <groupId>ant</groupId>
          <artifactId>ant</artifactId>
          <version>1.6.5</version>
        </dependency>
        <dependency>
          <groupId>wsdl4j</groupId>
          <artifactId>wsdl4j</artifactId>
          <version>1.6.2</version>
        </dependency>
		    <dependency>
            <groupId>javax.xml</groupId>
            <artifactId>jaxrpc</artifactId>
            <version>1.1</version>
        </dependency>
		<dependency>
            <groupId>org.eclipse.jdt.core.compiler</groupId>
            <artifactId>ecj</artifactId>
            <version>4.5.1</version>
        </dependency>
		<dependency>
            <groupId>javax.xml.soap</groupId>
            <artifactId>javax.xml.soap-api</artifactId>
            <version>1.4.0</version>
        </dependency>
    </dependencies>

    <build>
	    <!--指定源目录-->
		<finalName>Tomcat8.5</finalName>
		<sourceDirectory>java</sourceDirectory>
		<resources>
		    <resource>
			     <directory>java</directory>
			</resource>
		</resources>
        <plugins>
            <!-- 配置Maven的JDK编译级别 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <source>11</source>
                    <target>11</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

3、IDEA 配置环境变量

-Dcatalina.home=E:\apache-tomcat-8.5.87-src\source 
-Dcatalina.base=E:\apache-tomcat-8.5.87-src\source 
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
-Djava.util.logging.config.file=E:\apache-tomcat-8.5.87-src\source\conf\logging.properties

4、org.apache.catalina.startup.ContextConfig#configureStart()

/**
     * Process a "contextConfig" event for this Context.
     */
    protected synchronized void configureStart() {
        // Called from StandardContext.start()

        if (log.isDebugEnabled()) {
            log.debug(sm.getString("contextConfig.start"));
        }

        if (log.isDebugEnabled()) {
            log.debug(sm.getString("contextConfig.xmlSettings",
                    context.getName(),
                    Boolean.valueOf(context.getXmlValidation()),
                    Boolean.valueOf(context.getXmlNamespaceAware())));
        }
        webConfig();
        //初始化 jsp 引擎
        context.addServletContainerInitializer(new JasperInitializer(),null);

        if (!context.getIgnoreAnnotations()) {
            applicationAnnotationsConfig();
        }
        if (ok) {
            validateSecurityRoles();
        }
添加://初始化 jsp 引擎
context.addServletContainerInitializer(new JasperInitializer(),null);

猜你喜欢

转载自blog.csdn.net/xingcsdnboke/article/details/129724123