如何将tomcat源码以maven方式运行

2025-05-26 0 35

前言

最近在分析tomcat的启动流程,虽然我们可以在idea中查看到tomcat的源代码,但是我们不能在上面做一些代码注释,这就会 非常的不方便,所以我们还是能在本地 运行一份源码,这样非常有利于我们分析源码

一、下载tomcat源码,选择tomcat-8.5.55版本

进入tomcat官网,点击左侧菜单栏Download对应的版本,下载源码

如何将tomcat源码以maven方式运行

二、idea中创建项目

1.在idea中创建一个空白项目,名称为tomcat_study

如何将tomcat源码以maven方式运行

2.打开项目源目录,将tomcat的源码解压到其中

如何将tomcat源码以maven方式运行

3.创建文件夹

在tomcat的源码文件夹下面创建home目录,把源码中的conf目录和webapps目录剪切到其中(其他新建的目录如logs等),另外新建maven的pom.xml文件。

如何将tomcat源码以maven方式运行

如何将tomcat源码以maven方式运行

4、pom.xml文件中的内容

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72
<?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>tomcat8.5.55</artifactid>

<name>tomcat8.5.55</name>

<version>8.5.55</version>

<dependencies>

<dependency>

<groupid>junit</groupid>

<artifactid>junit</artifactid>

<version>4.12</version>

<scope>test</scope>

</dependency>

<dependency>

<groupid>org.easymock</groupid>

<artifactid>easymock</artifactid>

<version>3.4</version>

</dependency>

<dependency>

<groupid>org.apache.ant</groupid>

<artifactid>ant</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.5.1</version>

</dependency>

</dependencies>

<build>

<finalname>tomcat8.5.55</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>3.1</version>

<configuration>

<encoding>utf-8</encoding>

<source>1.8</source>

<target>1.8</target>

</configuration>

</plugin>

</plugins>

</build>

</project>

5、tomcat启动配置

5.1 构建项目

完成上面的操作以后,我们在idea中重新打开项目,直接选中我们增加的pom.xml文件,将所以的包下载完成以后,构建项目结构。

如何将tomcat源码以maven方式运行

5.2 设置run/debug configurations

如何将tomcat源码以maven方式运行

其中

?

1

2

3

4

5

6

7

8

9

10
main class:

org.apache.catalina.startup.bootstrap

vm options 按照自己的路径进行修改:

-dcatalina.home=g:/projects/tomcat_study/apache-tomcat-8.5.55-src/home

-dcatalina.base=g:/projects/tomcat_study/apache-tomcat-8.5.55-src/home

-djava.endorsed.dirs=g:/projects/tomcat_study/apache-tomcat-8.5.55-src/home/endorsed

-djava.io.tmpdir=g:/projects/tomcat_study/apache-tomcat-8.5.55-src/home/temp

-djava.util.logging.manager=org.apache.juli.classloaderlogmanager

-djava.util.logging.config.file=g:/projects/tomcat_study/apache-tomcat-8.5.55-src/home/conf/logging.properties

5.3 设置contextconfig类

然后打开contextconfig(org.apache.catalina.startup 下面) 类,加上一行代码:context.addservletcontainerinitializer(new jasperinitializer(),null);

如何将tomcat源码以maven方式运行

5.4 启动tomcat

即可debug查看tomcat的初始化和启动过程以及其他源码执行,入口类就是bootstrap类的main方法。

总结

通过上面过程,我们就可以 将tomcat源码通过maven方式在本地运行起来,小编已经成功运行起来,并且对tomcat中 调用servlet初始化的流程进行了注释

到此这篇关于如何将tomcat源码以maven方式运行的文章就介绍到这了,更多相关tomcat源码以maven方式运行内容请搜索快网idc以前的文章或继续浏览下面的相关文章希望大家以后多多支持快网idc!

原文链接:https://blog.csdn.net/hao134838/article/details/109731866

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 如何将tomcat源码以maven方式运行 https://www.kuaiidc.com/54541.html

相关文章

发表评论
暂无评论