Tomcat - 源码阅读环境搭建

概述

TomcatJava web开发 中应用最广泛的 Servlet 服务器,也是 SpringBoot 中默认的嵌入式 servlet 服务器,所以在学习 SpringBoot 之前,有必要先了解一下 tomcat,接下来我们就搭建一下 tomcat 的源码阅读环境

搭建步骤

我司常用的 SpringBoot 版本中内嵌的 Tomcat9.x 版本的,所以这篇文章中就以 9.x 版本为例

1、下载源码包

首先在 Tomcat 9 下载页面 选择源码包下载:

在这里插入图片描述

下载完成,解压之后,在 Idea 中打开项目

在这里插入图片描述

接着配置 SDK 信息:

在这里插入图片描述

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>org.apache.tomcat</groupId>
  <artifactId>tomcat</artifactId>
  <version>9.0.65</version>
  <name>tomcat-9.0.65</name>

  <build>
    <finalName>tomcat-9.0.65</finalName>
    <sourceDirectory>java</sourceDirectory>
    <resources>
      <resource>
        <directory>java</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>test</directory>
      </testResource>
    </testResources>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.10.1</version>
        <configuration>
          <encoding>UTF-8</encoding>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <!--org.apache.catalina.ant用到-->
    <dependency>
      <groupId>org.apache.ant</groupId>
      <artifactId>ant</artifactId>
      <version>1.10.12</version>
    </dependency>

    <dependency>
      <groupId>biz.aQute.bnd</groupId>
      <artifactId>biz.aQute.bndlib</artifactId>
      <version>6.3.1</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.tomcat</groupId>
      <artifactId>tomcat-jasper</artifactId>
      <version>9.0.65</version>
    </dependency>

    <!--org.apache.naming.factory.webservices.ServiceRefFactory用到-->
    <dependency>
      <groupId>wsdl4j</groupId>
      <artifactId>wsdl4j</artifactId>
      <version>1.6.2</version>
    </dependency>

    <!--org.apache.naming.factory.webservices用到-->
    <dependency>
      <groupId>javax.xml</groupId>
      <artifactId>jaxrpc</artifactId>
      <version>1.1</version>
    </dependency>

    <!--org.apache.jasper.compiler.JDTCompiler用到-->
    <dependency>
      <groupId>org.eclipse.jdt.core.compiler</groupId>
      <artifactId>ecj</artifactId>
      <version>4.5.1</version>
    </dependency>
  </dependencies>
</project>

3、配置启动类

Tomcat 的二进制包中,我们启动 Tomcat 需要在 bin 包下使用 startup.bat/sh 来启动项目,而在 startup.bat/sh 中又指定了 catalina.bat/sh 为可执行文件:

在这里插入图片描述

而在 catalina.bat/sh 中,又指定了主类为:org.apache.catalina.startup.Bootstrap

在这里插入图片描述

知道了上面的信息,接下来我们就在 Idea 中配置启动应用,并启动项目:

在这里插入图片描述

配置主类 org.apache.catalina.startup.Bootstrap

在这里插入图片描述

此时编译项目,会提示哪些包不存在,便可以据此添加上面 pom.xml 中定义的 jar

配置完成之后,启动项目,在控制台中即可看到启动日志:

在这里插入图片描述

3、配置编码格式

经过前面的配置,Tomcat 已经启动,但是还是存在乱码问题,需要我们配置一些启动参数:

在这里插入图片描述

配置参数:

-Duser.language=en
-Duser.region=US
-Dfile.encoding=UTF-8
-Dsun.jnu.encoding=UTF-8

配置完成后启动项目,可以看到控制台打印已经正常了:

在这里插入图片描述

访问 http://localhost:8080 就可以看到 Tomcat 的默认页面:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值