Tomcat源码学习系列之二:IDEA导入Tomcat源码

简介: 在学习Tomcat源码之前,我们首先需要将Tomcat在IDEA中进行导入后,进行代码调试。Idea导入 Tomcat源码步骤总结

引言

在学习Tomcat源码之前,我们首先需要将Tomcat在IDEA中进行导入后,进行代码调试。

  • Idea导入 Tomcat源码步骤
  • 总结

一、Idea导入 Tomcat源码步骤

1、下载Tomcat源码

a、进入Tomcat官网:Tomcat官网

b、点击页面左方Dowmload标题下的Tomcat下载链接;

image.png

c、在页面下方点击zip下载链接;

image.png

2、ANT安装与下载

a、首先在官网下载ANT安装包:ANT

b、点击下载链接进行安装包下载;

image.png

c、设置ANT环境变量

ANT_HOME: D:\soft\apache-ant-1.10.5

path: D:\soft\apache-ant-1.10.5\bin

classpath : D:\soft\apache-ant-1.10.5\lib

d、查看ANT是否安装完成

image.png

3、使用ANT命令获取catalina-home文件夹配置

a、在Tomcat源码路径新建catalina-home文件夹;

image.png

b、在cmd命令行中进入Tomcat源码路径下,即为:


image.png

c、在该目录下运行ant命令,如下所示,当出现BUILD SUCCESSFUL时,表示编译成功:


image.png

d、编译完成后,在Tomcat源码包根目录下的 output/build 中生成catalina-home所需的文件夹,将这些复制到源码包同级的catalina-home中;

image.png

4、在Idea中导入Tomcat源码

a、打开Idea,File-》Open,选择Tomcat的源码路径进行项目导入;

image.png

b、进行运行配置如下所示:

1)在菜单栏中点击Run后,在下拉菜单中选择Edit Configurations;

2)进行运行配置;

image.png

3)点击左上方的绿色加号选择Application进行配置;

image.png

4)配置清单如下:

Name:TomcatSource

Main class:org.apache.catalina.startup.Bootstrap

VM options:-Dcatalina.home=“D:\sourcecode\catalina-home”

Use classpath of module:一定和POM文件中的版本保持一致,自动匹配

5)在org–》apache–》catalina–》startup包下找到Bootstrap类,添加标志代码,如下所示;

 public static void main(String args[]) {
        System.out.println("****************Tomcat源码计划正式启动****************");
        if (daemon == null) {
            // Don't set daemon until init() has completed
            Bootstrap bootstrap = new Bootstrap();
            try {
                bootstrap.init();
            } catch (Throwable t) {
                handleThrowable(t);
                t.printStackTrace();
                return;
            }
            ...
}
相关文章
|
6天前
|
Java 应用服务中间件 Maven
IDEA创建一个Servlet项目(tomcat10)
IDEA创建一个Servlet项目(tomcat10)
17 1
|
2月前
|
Java
IDEA debug HashMap源码的心得
IDEA debug HashMap源码的心得
26 0
|
4天前
|
缓存 负载均衡 NoSQL
Redis系列学习文章分享---第十四篇(Redis多级缓存--封装Http请求+向tomcat发送http请求+根据商品id对tomcat集群负载均衡)
Redis系列学习文章分享---第十四篇(Redis多级缓存--封装Http请求+向tomcat发送http请求+根据商品id对tomcat集群负载均衡)
11 1
|
8天前
|
Java 应用服务中间件 数据库
SSM使用IDEA整合视频及源码配置文件
SSM使用IDEA整合视频及源码配置文件
14 1
|
19天前
|
XML Java 应用服务中间件
Tomcat项目创建 以及 在IDEA当中集成Tomcat
Tomcat项目创建 以及 在IDEA当中集成Tomcat
|
19天前
|
XML Java 应用服务中间件
idea与eclipse项目相互导入方式
idea与eclipse项目相互导入方式
22 1
|
4天前
|
移动开发 小程序 关系型数据库
java+ IDEA+ Uniapp+ mysql医院3D智能导诊系统源码
这是一个基于Java、IDEA、Uniapp和MySQL的医院3D智能导诊系统,采用Springboot后端框架和Redis、Mybatis Plus、RocketMQ等技术。系统通过对话式交互,精准推荐就诊科室,解决患者挂号困扰。它还具备智能预问诊功能,提升诊疗效率和准确性,确保医生能快速了解患者详情。此系统还支持小程序和H5,方便患者使用。
12 0
|
5天前
|
应用服务中间件
|
6天前
|
Java 应用服务中间件 Android开发
【Eclipse IDEA】IDEA 导入 eclipse Web项目
【Eclipse IDEA】IDEA 导入 eclipse Web项目
|
2月前
|
uml
【经验分享】如何在IDEA中快速学习|审查|复习代码工程?
在IDEA中加速工程学习与审查,提升代码质量和维护性,关键操作包括:使用"Structure"浏览工程结构,通过"Find Usages"查找类、方法或变量引用,借助"Show Local Changes As UML"展示UML图。遵循从整体到局部的UML图学习,再到具体代码的详细探索,可系统理解设计理念。详情参考[IDEA UML教程](https://blog.csdn.net/weixin_44701426/article/details/124598053)。
27 1
【经验分享】如何在IDEA中快速学习|审查|复习代码工程?