`
jwfdp
  • 浏览: 44776 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Tomcat源码分析环境搭建

 
阅读更多

一、工具准备 

需要SVN、Maven、JDK、Eclipse、M2Eclipse 

二、下载源码及发布包 

源码在: 
http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_27/ 

发布包在: 
http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.27/bin/ 

说明:下载发布包这个步骤是可选的,好处是免得从源码再自行构建,节省时间;另外发布包里的配置文件等,接下来可以直接拿来用,很方便 

三、整理目录 

前面下载得到了源码和发布包,现在要把它们放到同一个目录里,再整理一下,方便后面把它转化成eclipse工程,毕竟后续读源码,以及调试,都要在eclipse里完成 

新建一个单独的目录,叫tomcat7.0.27,然后把刚才下载的源码和发布包都放进去。源码目录重命名为code;发布包重命名为launch 

得到的目录结构见下图: 

 

一会就会把这个目录导入eclipse,变成可运行,可调试的eclipse工程 

四、转换成maven工程 

将附件中的pom.xml放入目录,与code、launch目录平行 

得到的目录结构见下图: 

 

说明:这也不是必须的,只是为了方便 

五、导入eclipse 

 

 

导入成功以后,eclipse里的工程目录结构如下图: 

 

接下来就可以在eclipse里运行和调试tomcat了,也可以随意修改源代码,或者自己添加测试用例 

六、启动tomcat 

tomcat启动入口类是:org.apache.catalina.startup.Bootstrap 

平时我们用发布包启动tomcat一般是用脚本startup.bat或者startup.sh,其实就是在脚本中先处理启动参数和系统变量,然后调用这个入口类的main()方法 

所以在eclipse里启动,我们也是直接执行这个类的main()方法,只是模拟脚本,设置一下启动参数和系统变量 

方法1: 

在VM arguments中,拷贝以下参数 

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

如图: 

 

方法2: 

将附件中的启动脚本,拷贝到工程目录下,结构如下图: 

 

然后直接在start-tomcat7.launch上右键点击,run就可以 

启动效果如下图: 

 

眼熟,和普通的脚本启动,以及启动嵌入式tomcat的信息都是一样的 

最后用浏览器访问:http://localhost:8080/examples/ 

七、tomcat7核心架构 



包名 作用
javax.* 各种JSR的API,如jsp、servlet、el等
org.apache.catalina tomcat自身架构
org.apache.coyote http、ajp协议实现
org.apache.el EL规范实现
org.apache.jasper JSP规范实现
org.apche.juli 日志
org.apache.naming JNDI实现
org.apache.tomcat 工具包、XML解析器等
分享到:
评论

相关推荐

    tomcat7源码环境搭建

    用于tomcat7.0开源分析,附件中有详细的搭建手顺,和相关LIB包。 这么详细的还搭建不成功,那就。。。 本机环境测试通过。

    Java生产制造业MES系统源码.zip

    开发环境搭建: jdk+eclipse+tomcat+maven+mysql IE-MES制造执行系统,其定位于制造执行系统的Java开源版本,系统包括系统管理、车间基础数据建模、计划管理、物料控制、生产执行、质量管理、库存管理、看板管理、...

    jsp在线考试系统(源码+数据库+素材).zip

    项目基本介绍,及开发环境搭建。 Jdk1.8 eclipse tomcat7 mysql5.7 环境搭建教程: http://programmer.ischoolbar.com/index.php/article/article/id/169.html 项目后台管理功能介绍(整理需求): 1.专业学科管理...

    校园二手交易平台.rar

    该项目是一个基于Jsp技术的web项目,适用于大学生的毕业设计项目,包含论文,项目源码,数据库,前端代码,后端代码,E-R图,数据流图,界面美观。使用IEDA,MYSQL,JAVA1.8,TOMCAT9.0开发环境搭建的项目

    毕业设计基于JavaWeb的学生成绩管理分析系统源码+数据库+使用说明

    2、搭建Java运行环境 运行java程序,无论是桌面应用还是Web应用,操作系统都必须安装java虚拟机,这就是java跨平台的原因。 Java虚拟机安装步骤如下: 1)安装JDK 2)配置环境变量:新建系统变量,变量名为JAVA_HOME...

    java8集合源码分析-tools:常用工具分享

    集合源码分析 工具集 :hammer_and_wrench: :orange_book: 项目主要收集学习开发中使用过的工具、类库以及优秀的开源项目等,还包括一些黑科技、插件等等。:writing_hand: :clipboard: 欢迎大家补充分享,谢谢! 持续...

    基于SSM的面向学生成绩分析系统(源码+部署说明+演示视频+源码介绍).zip

    通过阅读部署说明,开发者可以轻松地在自己的计算机上搭建起一个运行该项目的环境。演示视频部分提供了一个实际操作的演示视频,展示了如何在浏览器中访问系统界面,进行成绩查询、统计分析等功能的操作。通过观看...

    Java框架springBoot企业级进销存ERP系统源码源码进销存源码.zip

    该项目的架构搭建使用的是maven,后台是使用的是spring boot框架,数据库的CRUD使用的是注解的方式,权限管理使用的是shiro框架,前端使用的框架是jquery,bootstrap,highcharts4插件,主要有以下功能:用户管理、...

    Java框架springBoot进销存ERP系统源码(含数据库脚本).rar

    该项目的架构搭建使用的是maven,后台是使用的是spring boot框架,数据库的CRUD使用的是注解的方式,权限管理使用的是shiro框架,前端使用的框架是jquery,bootstrap,highcharts4插件,主要有以下功能:用户管理、...

    ssm学生成绩管理源码工程

    环境搭建:搭建SSM环境,包括安装Java、Tomcat、MySQL,配置Spring、SpringMVC和MyBatis。 编写代码:根据你的需求设计数据库表,并使用MyBatis进行数据库操作。编写SpringMVC的Controller来处理前端的请求,并调用...

    基于jsp视频教学考试网源码.zip

    开发环境是MyEclipse,服务器采用tomcat,开发出的一个基于Web技术的B/S结构的能够在线进行视频教学,教学资料下载的一个教辅网站。通过教辅网站的建立,可以帮助学生和教师进行一个更好的教学辅助的学习。 关键词...

    开涛高可用高并发-亿级流量核心技术

    12.2.2 HttpClient连接池源码分析 240 12.2.3 HttpClient 4.2.3配置 241 12.2.4 问题示例 243 12.3 线程池 244 12.3.1 Java线程池 245 12.3.2 Tomcat线程池配置 248 13 异步并发实战 250 13.1 同步阻塞调用 251 13.2...

    Java框架springBoot企业级进销存ERP系统源码

    该项目的架构搭建使用的是maven,后台是使用的是spring boot框架,数据库的CRUD使用的是注解的方式,权限管理使用的是shiro框架,前端使用的框架是jquery,bootstrap,highcharts4插件,主要有以下功能:用户管理、...

    基于jsp数信学院电子邮件服务系统源码.zip

    开发环境是MyEclipse,服务器采用tomcat,开发出的一个基于Web技术的B/S结构的电子邮件服务系统,系统主要是针对数信学院的相关信息进行管理的一个网站,通过在线视频的教学和学习,邮件的沟通,教师和学生之间的...

    javaweb网上购物系统设计与实现(开题报告+任务书+外文翻译+论文+源码).rar

    6.1.2 Tomcat环境搭建 41 6.2 系统程序的安装和加载 41 6.2.1 文件的拷贝 41 6.2.2 数据库的连接 42 6.2.3 Myeclipse开发工具 42 6.3系统测试 43 6.3.1 系统关键部分测试分析 43 6.3.2 单元测试分析 44 6.3.3 测试...

    jsp641学生奖学金和资助管理系统ssh mysql java源码论文

    本文针对学生资助管理系统的实际情况,按照软件工程的结构化设计思想利用S2H...后台使用MySQL作为数据库管理系统,开发环境是MyEclipse,服务器采用Tomcat,开发出的一个基于Web技术的B/S结构的学生资助管理系统。

    基于ssm+Vue的本科生毕业设计选题系统(源码+部署说明+系统介绍+数据库).zip

    主要包括以下几个部分:环境配置:介绍如何搭建项目所需的开发环境,包括Java开发环境、MySQL数据库环境等。项目打包:介绍如何将项目打包成可执行的JAR文件,以便在服务器上运行。服务器配置:介绍如何在服务器上...

    JSP网站开发典型模块与实例精讲

    本书的内容分为三部分:第一部分介绍了JSP的运行原理,开发运行环境的搭建及数据库连接和调试等JSP开发必备知识;第二部分介绍了构成网络系统的几个经典模块等。 目录: 第1章 JSP开发前奏  1.1 JSP基于服务器...

    基于jsp网络聊天室ssh源码.zip

    适用于项目搭建、技术学习,毕设,课设等,数据库文档齐全 本系统采用了MYECLIPSE8.5作为开发工具,后台数据库采用了MYSQL数据库设计,利用JAVA的框架技术S2SH和后台数据处理。利用TOMCAT6.0以上的版本作为服务器,...

    java web进销存系统.zip

    该项目的架构搭建使用的是maven,后台是使用的是spring boot框架,数据库的CRUD使用的是注解的方式,权限管理使用的是shiro框架,前端使用的框架是jquery,bootstrap,highcharts4插件,主要有以下功能:用户管理、...

Global site tag (gtag.js) - Google Analytics