源码之前,了无秘密。

说一句逼格很高的话来镇镇场子。

这两天在看陆舟的《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源码.zip

ognl源码.zip

struts2源码调试环境的搭建的更多相关文章

  1. 如何搭建自己的SpringBoot源码调试环境?--SpringBoot源码(一)

    1 前言 这是SpringBoot2.1源码分析专题的第一篇文章,主要讲如何来搭建我们的源码阅读调试环境.如果有经验的小伙伴们可以略过此篇文章. 2 环境安装要求 IntelliJ IDEA JDK1 ...

  2. JVM 源码分析(二):搭建 JDK 8 源码调试环境(Windows 上使用 CLion)

    前言 一.准备源码 二.安装 "Bootstrap JDK" 三.配置编译环境 四.编译与测试 五.安装 CMake 和 GDB 五.准备远程调试 六.开始远程调试 前言 上一篇文 ...

  3. [原创]在Windows和Linux中搭建PostgreSQL源码调试环境

    张文升http://ode.cnblogs.comEmail:wensheng.zhang#foxmail.com 配图太多,完整pdf下载请点这里 本文使用Xming.Putty和VMWare几款工 ...

  4. Sping学习笔记(一)----Spring源码阅读环境的搭建

    idea搭建spring源码阅读环境 安装gradle Github下载Spring源码 新建学习spring源码的项目 idea搭建spring源码阅读环境 安装gradle 在官网中下载gradl ...

  5. 深入理解Tomcat系列之二:源码调试环境搭建(转)

    前言 最近对Tomcat的源码比较感兴趣,于是折腾了一番.要调试源码首先需要搭建环境,由于参考了几篇帖子发现都不怎么靠谱,最后还是折腾出来了,然而却花了足足一天的时间去搭建这个环境.发现都不是帖子的问 ...

  6. [Tomcat源码分析] Eclipse中搭建Apache Tomcat源码调试环境

    网上很多文章都推荐使用Ant下载编译,但本地实践中屡屡失败,无法下载. 后来参考 https://blog.csdn.net/xiongyouqiang/article/details/7894107 ...

  7. Tomcat源码调试环境搭建

    我们一般都是为了解决某个问题,才去看源码的.Java体系就是这点好处,源码唾手可得.遇到问题,最后的解决方法总是可以从源码中找到. 参考了网上的文章,过程整理如下: 1. 下载和导入 官网下载编译好的 ...

  8. Eclipse中搭建Apache Tomcat7源码调试环境

    第一步:获取Apache Tomcat7源码,读者可以从Apache 官方网站获取,官方下载地址: http://tomcat.apache.org/download-70.cgi 注意选择Sourc ...

  9. 15分钟搭建RocketMQ源码调试环境

    下载源码 下载源码,github页面选择(rocketmq-all-4.7.1)版本压缩包,https://github.com/apache/rocketmq/tags 导入IDEA 1. 使用ID ...

随机推荐

  1. PHP.INI常用设置一览表(持续更新)

    在编程的过程中遇到或发现的问题,会持续的更新: 1. 打破var_dump的显示瓶颈 php开发环境里,安装了xdebug模块后,var_dump()输出的结果将比较易于查看,但默认情况下,var_d ...

  2. <audio>使用2

    1.属性测试 <!--显示控件--> <audio src="../images/wind.mp3" id="audioOne" contro ...

  3. C语言undefined behaviour未定义行为

    C语言中的未定义行为(Undefined Behavior)是指C语言标准未做规定的行为.同时,标准也从没要求编译器判断未定义行为,所以这些行为有编译器自行处理,在不同的编译器可能会产生不同的结果,又 ...

  4. PHP基础之 file_get_contents() 函数

    定义和用法 file_get_contents() 函数把整个文件读入一个字符串中. 和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串. file_get ...

  5. Eclipse安装与搭建Maven

    Maven的具体参考书可以看:<Maven实战> 下载maven可以到:http://maven.apache.org/ Maven的eclipse基本使用可以在这里看到:http://w ...

  6. JQuery动态表格

    功能实现:点击添加按钮,表格增加一行并给其name属性赋予的值,方便获取 点击删除,自动删除这一行 JQuery中定义一个count变量 var count = 1; function add() { ...

  7. 项目 Web 的 NuGet 程序包还原失败: 找不到“1.0.0”版本的程序包“Microsoft.Net.Compilers”。。 0

    项目   Web 的 NuGet 程序包还原失败: 找不到“1.0.0”版本的程序包“Microsoft.Net.Compilers”.. 0 使用vs的NutGet包管理器时,另一台电脑从svn下载 ...

  8. 几个常用道的macro

    几个常用道的macro1.macro(1)#error msg 指令使編譯器停止執行並打印一條語句,(2)printf("%d,%s",_LINE_,_FILE_)打印當前行號和文 ...

  9. LoadRunner 技巧之THML 与 URL两种录制模式分析

    Loadrunner的Virtual User Generator 提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,loadrunner提供两种录制脚本的方式:Html_based ...

  10. IPicture总结

    1.利用IPicture接口加载.显示图片 IPicture接口管理一个图片对象和它的属性.图片对象提供对Bitmap Icon Metafile的语言不相关的抽象支持.图像对象的主要接口是IPict ...