详解IDEA创建Tomcat8源码工程流程

上一篇文章的产出,其实离不开网上各位大神们的辅助,正是通过他们的讲解,我才对Tomcat的结构有了更进一步的认识。

但在描述前后端交互的过程中,还有很多细节并没有描述到位,所以就有了研究Tomcat源码的想法。

而在配置Tomcat源码工程的过程中,摸摸爬爬两个多小时,总算是成功启动了。

故撰写此篇博文,授之以渔。

准备工作

1.apache-tomcat-8.5.32-src源码包,官网下载并解压即可;

2.apache-ant-1.10.5(用的最新版)下载并安装:Tomcat源码默认采用的是ant编译;安装好以后配置环境变量

配置好环境变量后在dos下运行 ant -version 查看是否能成功使用

项目创建过程

1、pom.xml文件配置

由于需要将项目导入idea中,故需要在源码包的根目录下( 即apache-tomcat-8.5.32-src下 )创建如下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>Tomcat8.0</artifactId>
  <name>Tomcat8.0</name>
  <version>8.0</version>

  <build>
    <finalName>Tomcat8.0</finalName>
    <sourceDirectory>java</sourceDirectory>
    <!--<testSourceDirectory>test</testSourceDirectory>-->
    <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.1</version>
        <configuration>
          <encoding>UTF-8</encoding>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <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>ant</groupId>
      <artifactId>ant</artifactId>
      <version>1.7.0</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>
  </dependencies>
</project>

2、运行ant命令获取catalina-home的文件夹配置

为了得到catalina-home下的各类文件夹,从而成功使用Tomcat,需要利用ant命令来获取源码包对应的文件夹

1)在源码包文件夹同级下创建catalina-home文件夹;

2)进入win+R->cmd命令行内,cd进入源码包根目录下: 即apache-tomcat-8.5.32-src下

3)运行ant;

运行结束之后,会在源码包根目录下的 output/build 中生成catalina-home所需的文件夹;将这些复制到源码包同级的catalina-home中。

IDEA导入项目及配置

1、导入项目

启动idea,进行import project导入项目, 导入时选择项目时选择源码包的目录即apache-tomcat-8.5.32-src ,一路默认选择即可。

2、配置

成功导入项目之后,必须得进行一系列配置才能成功启动项目。

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

2)在打开的弹框中进行如下配置:

a. 点左上方绿色加号,选择Apllication。

b.名字随意。在MainClass处,输入: org.apache.catalina.startup.Bootstrap

c.VM options:填入刚刚创建的catalina-home文件夹路径,如我的是:

-Dcatalina.home="D:\Tomcat-Study\catalina-home"

d.Use classpath of module和pom文件中设置的Tomcat版本一直,不一致会无法成功创建application, 一般会自动对应pom.xml文件中设置的;

e.确认好jre,点击apply,配置就算完成了。

启动项目

配置好了以后就可以启动项目了。可以找到/java/org.apache.catalina.startup.Bootstrap.java文件,在main函数中注入一行如下输出语句以便观察。

public static void main(String args[]) {
    System.out.println("项目开始启动===============================");
    if (daemon == null) {
      // Don't set daemon until init() has completed
      Bootstrap bootstrap = new Bootstrap();
      try {
........

启动项目。控制台显示如下:

最终出现如下信息且无报错,则表示项目启动成功。

此时便可在browser上进行访问了,输入localhost:8080,出现Tomcat启动后的经典画面。

接下来你就可以进行Tomcat源码的调试及开发了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • intellij idea tomcat热部署配置教程

    1.设置Debugger-HotSwap 在setting界面,打开Debugger-HotSwap选项,确保勾选了Build project before reloading classes,同时选择Reload classes after compilation为Always.这样我们在编译某个修改了的java文件之后,就会利用HotSwap机制reload class,而Build project before reloading classes就确保了其他修改过的文件一起同步到部署目录.

  • IntelliJ IDEA Tomcat配置详解(图文)

    查找该问题的童鞋我相信IntelliJ IDEA,Tomcat的下载,JDK等其他的配置都应该完成了,那我直接进入正题了. 1> 进入 Edit Configurations 2> 点击 + ,选择 Tomcat 服务器,如果是本地Tomcat 选择 Local 3> Tomcat Server -> Unnamed -> Server -> Application server 的 Configuration ,找到本地 Tomcat 服务器,再点击 OK按钮 4&g

  • idea2017建立jsp工程及tomcat配置教程

    1:创建新工程,无脑下一步 输入工程名称,选择地址,完事. 2:配置tomcat 先从tomcat官网下载zip包( https://tomcat.apache.org/download-90.cgi ),解压到某个位置,然后 在4的位置添加tomcat地址,即可完成tomcat服务器配置. 还需要添加tomcat容器的servlet库: 即可添加tomcat的库. 3:这时候,会提醒artifacts错误,点击Fix: 然后点击绿色小铅笔进行配置: 选中"WEB-INF",然后&qu

  • 解决IDEA 启动Tomcat控制台乱码问题

    今天在Idea中用Tomcat跑一个Web项目,启动后,Tomcat日志在控制台打印出来都是乱码,如下图所示: 这个问题是Tomcat的编码问题引起的,解决该问题可以进行如下配置: -Dfile.encoding=UTF-8 如果还不行,就这样: 点击确定.重启TOMCAT进行调试,可以看到控制台中tomcat日志中的中文能正常显示了. 上面基本上应该不会出现乱码啦 如上述全部尝试还是乱码则需要修改配置文件 进入idea的安装目录, 进入bin目录下.找到idea.exe.vmoptions这个

  • IntelliJ IDEA使用maven实现tomcat的热部署

    在tomcat的conf目录 tomcat-users.xml配置以下内容(<tomcat-users>标签内</tomcat-users>),用于部署: <role rolename="manager"/> <role rolename="manager-gui"/> <role rolename="admin"/> <role rolename="admin-gui&

  • 详述IntelliJ IDEA远程调试Tomcat的方法(图文)

    在调试代码的过程中,为了更好的定位及解决问题,有时候需要我们使用远程调试的方法.在本文中,就让我们一起来看看,如何利用 IntelliJ IDEA 进行远程 Tomcat 的调试. 首先,配置remote: 如上图所示,点击Edit Configurations,进入如下界面: 如上图所示,我们进入了Run/Debug Configurations界面,然后点击左上角的+,选择Remote: 标注 1:运行远程 JVM 的命令行参数: 标注 2:传输方式,默认为Socket: 标注 3:调试模式

  • IDEA部署JavaWeb项目到Tomcat服务器的方法

    IDEA创建一个传统JAVA WEB项目(不使用maven构建) 方法一 File --> NEW --> Project --> Java (勾选Web Application) 方法二 File --> NEW --> Project --> Java Enterprise(勾选Web Application) IDEA部署JAVA WEB项目 IDEA 并非把项目放到 tomcat 的 webapp目录中,而项目还是在源项目目录中,IDEA采用了一种无入侵Tomc

  • 使用IntelliJ IDEA配置Tomcat入门教程

    一.下载Tomcat 1.进入官网http://tomcat.apache.org/,选择download,下载所需Tomcat版本. 此处我们选择下载最新版本Tomcat 9. 注意有zip和exe两种格式的,zip(64-bit Windows zip(pgp,md5,sha1))是免安装版的,exe(32-bit/64-bit Windows Service installer(pgp,md5,sha1))是安装版.同时观察自己的电脑是64位系统还是32位系统. 此处选择下载zip版: 下

  • IntelliJ IDEA配置Tomcat(完整版图文教程)

    查找该问题的童鞋我相信IntelliJ IDEA,Tomcat的下载,JDK等其他的配置都应该完成了,那我直接进入正题了. 1.新建一个项目 2.由于这里我们仅仅为了展示如何成功部署Tomcat,以及配置完成后成功运行一个jsp文件,我仅勾选JavaEnterprise-->Web Application-->Next.可能由于我之前配置过了所以在Application Server这一栏会显示已有Tomcat,你们忽略就好. 3.项目名称这些默认就好了,为了快速部署Tomcat嘛,这些不是重

  • Intellij idea远程debug连接tomcat实现单步调试

    web项目部署到tomcat上之后,有时需要打断点单步调试,如果用的是Intellij idea,可以通过如下方法实现: 开启debug端口,启动tomcat 以tomcat7.0.75为例,打开bin目录下的catalina.bat文件,如下图,可以看到默认的debug端口是8000,如果本地的8000已经被占用,请改成一个未占用的端口号: 在bin目录下执行命令catalina.bat jpda start,可以启动tomcat并开启远程调试的端口 在Intellij idea中远程连接to

随机推荐