如题,这里记录一下用IDEA导入tomcat9的源码,并跑起来。看了本教程你还是不会的话直接问我。

一、环境安装以及目录搭建

tomcat9源码下载地址:http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.1/src/apache-tomcat-9.0.1-src.zip

还有你的安装jdk1.8+,maven以及IDEA,现在假设你把这些都装好了。

在你常用的项目放置目录(我的是my_project)下建立一个目录(tomcat9_src),这个目录是maven项目的父目录,然后再,然后在tomcat9_src下建立一个catalina-home的目录,将tomcat的源文件压缩包解压到tomcat9_src中,并将解压的源文件中的如下目录:

复制到catalina-home目录下。

完成这些步骤之后的目录样子大概是这样的。

删除源码中的test文件夹,因为它会引用webapps中的一个类,而这个类又不在源码中,因此编译肯定失败,听我的。

现在就是要在tomcat9_src下加一个主pom.xml,然后再apache-tomcat-9.0.1-src下加一个模块pom.xml。

加完了pom之后,不用要用IDEA直接打开项目,而是用导入功能:

  1. -Dcatalina.home=catalina-home -Dcatalina.base=catalina-home
  2. -Djava.endorsed.dirs=catalina-home/endorsed -Djava.io.tmpdir=catalina-home/temp
  3. -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
  4. -Djava.util.logging.config.file=catalina-home/conf/logging.properties

删除所有的类似这段代码,这个是检测虚拟机版本的,没啥用。

他大爷的,要烂尾了,记得把编译好的tomcat中的lib  jar包也放到catalina-home目录下啊,惨痛的历史教训哦哦

IDEA导入tomcat9源码跑起来~的更多相关文章

  1. IDEA 导入 Tomcat9 源码

    源码下载(Source Code Distributions)地址:https://tomcat.apache.org/download-90.cgi tomcat 和 servlet 以及 jdk ...

  2. 探秘Tomcat(一)——Myeclipse中导入Tomcat源码

    前言:有的时候自己不知道自己是井底之蛙,这并没有什么可怕的,因为你只要蜷缩在方寸之间的井里,无数次的生活轨迹无非最终归结还是一个圆形:但是可怕的是有一天你不得不从井里跳出来生活,需要重新审视井以外的生 ...

  3. Eclipse导入Hadoop源码项目及编写Hadoop程序

    一 Eclipse导入Hadoop源码项目 基本步骤: 1)在Eclipse新建一个java项目[hadoop-1.2.1] 2)将Hadoop压缩包解压目录src下的core,hdfs,mapred ...

  4. 关于导入geoserver 源码到Eclipse编译运行

    参考http://blog.csdn.net/gisshixisheng/article/details/43016443 和  http://blog.sina.com.cn/s/blog_6e37 ...

  5. spring源码学习(一):eclipse导入spring源码

    前言 对于一门技术,我们最先是了解它(what),然后再熟练的使用它(how)以及何时用它(when),最后肯定要看透它(why).spring作为Java开发人员可以说是最熟悉不过的了,基本每个Ja ...

  6. eclipse导入Java源码

    eclipse导入Java源码 下载源码包(一般jdk都自带了, 我的没有) src.zip eclipse -> window -> preferences -> JAVA -&g ...

  7. Hadoop1.x目录结构及Eclipse导入Hadoop源码项目

    这是解压hadoop后,hadoop-1.2.1目录 各目录结构及说明: Eclipse导入Hadoop源码项目: 注意:如果没有ant的包可以去网上下,不是hadoop里面的. 然后如果通过以上还报 ...

  8. idea 导入spring 源码注意的问题

    问题:idea导入spring 源码的步骤是: 首先从官网下载spring的源码:git clone https://github.com/spring-projects/spring-framewo ...

  9. 导入android源码中的APP源码到eclipse

    导入android源码中的APP源码到eclipse 一般最简单的办法就是创建新的android工程,选择create project from existing source选项,直接导入源码就OK ...

随机推荐

  1. js部分的总结

    一.词法结构 1.区分大小写 2.注意//单行/*多行注释* 3.字面量(直接量 literal) 12 //数字 5.8 //小数 “hello” ‘hello’ true /js/gi  //正则 ...

  2. [BZOJ4568][SCOI2016]幸运数字(倍增LCA,点分治+线性基)

    4568: [Scoi2016]幸运数字 Time Limit: 60 Sec  Memory Limit: 256 MBSubmit: 2131  Solved: 865[Submit][Statu ...

  3. [POI2007]Tourist Attractions

    题目大意: 给你一个$n(n\leq 2\times 10^4)$个点,$m(m\leq 2\times 10^5)$条边的带边权的连通图.其中有$k(k\leq 20)$个关键点.关键点之间有$g$ ...

  4. Spring项目搭建

    1,新建web项目 2,导入jar包 3,编写配置文件 <?xml version="1.0" encoding="UTF-8"?> <bea ...

  5. SqlServer发布订阅错误收集

    原文:SqlServer发布订阅错误收集 目录 1. SqlServer发布订阅错误收集 1.1. Message:脚本对于表"dbo.table"失败. 1.1.1. 错误消息 ...

  6. 玩转shell之符号篇

    转:http://hi.baidu.com/hellosimple/item/21b31dfefd23e811e2e3bd47 在shell中常用的特殊符号罗列如下: # ; ;; . , / \\ ...

  7. onWebView检查网页中文

    问题:要检查网页中的一段文本: 开始我是这样写的: private final static String SPECIFIED_TEXT = "这个是一段中文"; onWebVie ...

  8. [置顶] kubernetes将外部服务映射为内部服务

    在实际应用中,一般不会把mysql这种重IO.有状态的应用直接放入k8s中,而是使用专用的服务器来独立部署.而像web这种无状态应用依然会运行在k8s当中,这时web服务器要连接k8s管理之外的数据库 ...

  9. bash: /bin/bash^M: bad interpreter: No such file or directory

    在windows下编写shell脚本在linux下运行会出报错: [hadoop@master data]$ ./load_ods_table.sh -bash: ./load_ods_table.s ...

  10. 解决dubbo问题:forbid consumer(1)

    原因: 1.dubbo服务没有起动起来 2.dubbo链接的地址出现异常 3.dubbo服务端更新了服务接口,没有发布 如果已上都没有问题,那么还有一个原因就是 “ 别人的代码有问题 阻碍了 你的程序 ...