struts2源码调试环境的搭建
源码之前,了无秘密。
说一句逼格很高的话来镇镇场子。
这两天在看陆舟的《Struts2技术内幕》,一边看脑子一边冒出四个字:相见恨晚。极力推荐想了解Struts2的人看看这本书,之前一直在看李刚的《轻量级JavaEE企业应用实战》,感觉不如他的疯狂java讲义好。为什么呢?就觉得书的定位不清楚。如果是拿来入门,则又略显繁琐,倒不如那本《深入浅出Struts2》来得简洁;拿来精进,又显得深度不够。就跟谭浩强的C语言系列一个毛病。所以如果大家想入门Struts2,就看那本《深入浅出Struts2》,如果感觉自己已经会用了,并且也尝试写了一些后台程序了,对于Struts2有了一些感性的认识了,那么这本陆舟的书,会是你的首选。
闲言少叙,回到题目,怎么搭建调试环境呢?
一、下载Struts2相关资源
可以打开此链接http://struts.apache.org/download.cgi#struts2324,也可以在我的附件中下载。
二、解压struts2-XXXX-all.zip到任意目录
可以看到Struts2的组织结构如图:
其中apps存放了所有Struts2的示例项目,强烈建议在初学的时候,一定要研究研究这些例子程序,都是麻雀虽小,五脏俱全的。
docs存放了所有Struts2与Xwork的文档。
lib存放了所有Struts2相关的JAR文件以及Struts2运行时所依赖的JAR文件。
src存放了所有Struts2的源码
三、部署Struts2环境
我用的平台是MyEclipse。
打开MyEclipse,Files-New-Web Project,建立一个web项目。
然后进入上一步解压后的目录,再进入apps,struts2-blank,如图所示。
然后按照目录里的结构,拷贝到MyEclipse中,如图所示
然后再把Tomcat服务器部署好(如何部署,可以很容易在网上搜到,此处略去),就可以了。
四、添加源码包
刚才下载好的第二个包,也就是struts2-XXXX.zip包,里面就是Struts2-core-XXX.jar的源码。
添加方法:
找到struts2-core-XXX.jar包,右击,选择属性,按照下图所示添加源码包即可。
当你看到如下图所示的效果,并且双击.class文件,可以显示源码时,即表明,添加源码成功。
以上是添加struts2-core.jar源码,如果要添加比如ognl源码时也是类似的步骤,下载ognl源码的连接http://www.java2s.com/Code/Jar/o/Downloadognl306jar.htm
但是可能会出现问题,我就出现过,明明已经导入源码包了,但是还是打不开.class文件,这个时候,你就需要想想是不是源码的版本问题了,建议你换一个更低的版本试试。
五、进行调试
在图中标出的地方设置断点后,就可以像调试普通Java程序一样进行单步跟踪调试了。
但是在调试时,需要将Tomcat服务器调到debug模式,不然会进不去调试模式。
至此,调试环境的搭建已大功告成。
开始源码之旅吧!
下面是我的几个亲测可用的版本附件:
struts2源码调试环境的搭建的更多相关文章
- 如何搭建自己的SpringBoot源码调试环境?--SpringBoot源码(一)
1 前言 这是SpringBoot2.1源码分析专题的第一篇文章,主要讲如何来搭建我们的源码阅读调试环境.如果有经验的小伙伴们可以略过此篇文章. 2 环境安装要求 IntelliJ IDEA JDK1 ...
- JVM 源码分析(二):搭建 JDK 8 源码调试环境(Windows 上使用 CLion)
前言 一.准备源码 二.安装 "Bootstrap JDK" 三.配置编译环境 四.编译与测试 五.安装 CMake 和 GDB 五.准备远程调试 六.开始远程调试 前言 上一篇文 ...
- [原创]在Windows和Linux中搭建PostgreSQL源码调试环境
张文升http://ode.cnblogs.comEmail:wensheng.zhang#foxmail.com 配图太多,完整pdf下载请点这里 本文使用Xming.Putty和VMWare几款工 ...
- Sping学习笔记(一)----Spring源码阅读环境的搭建
idea搭建spring源码阅读环境 安装gradle Github下载Spring源码 新建学习spring源码的项目 idea搭建spring源码阅读环境 安装gradle 在官网中下载gradl ...
- 深入理解Tomcat系列之二:源码调试环境搭建(转)
前言 最近对Tomcat的源码比较感兴趣,于是折腾了一番.要调试源码首先需要搭建环境,由于参考了几篇帖子发现都不怎么靠谱,最后还是折腾出来了,然而却花了足足一天的时间去搭建这个环境.发现都不是帖子的问 ...
- [Tomcat源码分析] Eclipse中搭建Apache Tomcat源码调试环境
网上很多文章都推荐使用Ant下载编译,但本地实践中屡屡失败,无法下载. 后来参考 https://blog.csdn.net/xiongyouqiang/article/details/7894107 ...
- Tomcat源码调试环境搭建
我们一般都是为了解决某个问题,才去看源码的.Java体系就是这点好处,源码唾手可得.遇到问题,最后的解决方法总是可以从源码中找到. 参考了网上的文章,过程整理如下: 1. 下载和导入 官网下载编译好的 ...
- Eclipse中搭建Apache Tomcat7源码调试环境
第一步:获取Apache Tomcat7源码,读者可以从Apache 官方网站获取,官方下载地址: http://tomcat.apache.org/download-70.cgi 注意选择Sourc ...
- 15分钟搭建RocketMQ源码调试环境
下载源码 下载源码,github页面选择(rocketmq-all-4.7.1)版本压缩包,https://github.com/apache/rocketmq/tags 导入IDEA 1. 使用ID ...
随机推荐
- CentOS 7 启动VNC失败问题
开机后发现VNC服务没有启启来,提示我们使用journalctl -xn查看错误信息,提示信息如下: Sep :: localhost.localdomain systemd[]: Unit vncs ...
- UITabBarController+微博简单模拟1
UITabBarController是IOS中很常用的一个viewController.UITabBarController通常作为整个程序的rootViewController,而且不能添加到别的c ...
- 005 列表以及append,extend方法
定义一个列表: number=[,'changhao','常浩',5.2] 往这个列表里面添加单一新值(类型无限制),需要使用append方法. 例如: number.append() number. ...
- MySQL忘记了密码登录不进去,用命令符修改新的密码重新登录的方法
MySQL忘记了密码登录不进去,用命令符修改新的密码重新登录的方法: 1.备份my.ini 2.在my.ini字段里 [mysqld] #socket=mysql skip-grant-tables ...
- input添加邮箱的时候自动显示后缀
1.HTML代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
- javascript. String方法扩张.
有时候觉得js内置的方法不够用.可自己扩充. 下面是我扩充的几个方法. 为了避免变量冲出.覆盖.利用自执行函数实现. +function (a) { a.fn = a.prototype; var f ...
- FTP配置参数
格式 vsftpd.conf 的格式非常简单,每行要么是一个注释,要么是一个指令.注释行以#开始并被忽略掉.指令行格式如下: 配置项=参数值 很重要的一点是,这个格式里不存在任何空格. 默认的,每一个 ...
- Exception和IOException之间的使用区别
Exception和IOException之间的使用区别 先看一段代码.这段代码来自<深入剖析tomcat> public void await() { // 创建ServerSock ...
- c语言 列出系统进程
#include <stdio.h> #include "stdafx.h" #include <Windows.h> #include <strin ...
- webapi文档
webapi文档描述-swagger 最近做的项目使用mvc+webapi,采取前后端分离的方式,后台提供API接口给前端开发人员.这个过程中遇到一个问题后台开发人员怎么提供接口说明文档给前端开发人员 ...