源码之前,了无秘密。

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

这两天在看陆舟的《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. JQ选择器

    jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个 ...

  2. MVC 过滤器 ActionFilterAttribute

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  3. MySql优化-你的SQL命中索引了吗

    在项目开发中SQL是必不可少的,表索也一样.这些SQL的运行性能不知道吗?有多少是命中了索引的?命中哪个索引?索引中有哪个是无效索引?这些无效索引是否会影响系统的性能?带着这些问题我们一起来学习一下. ...

  4. UVALive 6959 - Judging Troubles

    给两组字符串,最多有多少对相同. map做映射判断一下. #include <iostream> #include <cstdio> #include <map> ...

  5. C++ 常见容器

    迭代器. 基本介绍(来源于网络):迭代器是一种抽象的概念.能够遍历容器内的 部分/全部 元素.每个迭代器中包含着元素的地址.  它可以将 抽象容器 和 泛型算法 结合起来.   大致原理: 1)迭代器 ...

  6. Java并发编程之ThreadLocal类

    ThreadLocal类可以理解为ThreadLocalVariable(线程局部变量),提供了get与set等访问接口或方法,这些方法为每个使用该变量的线程都存有一份独立的副本,因此get总是返回当 ...

  7. Spring的注解学习(ioc,aop结合)

    首先引入jar包 aspectjrt.jar aspectjweaver.jar 1.dao package com.dao; public interface OkpDao { public voi ...

  8. 自动化高效css开发,畅谈less的灵活变化

    css是一种让html与样式分离解析而出现的代码,它的出现大大提高了程序员的工作效率,和后期进行维护的效率.但是发展至今,由于起死板单调的写法,越来越不能满足程序员们灵活的思维,很多时候是种恨铁不成钢 ...

  9. Sublime Text2 快捷键设置

    设置Tab两个空格: 点击 Preference -> Settings-User "tab_size":2, "translate_tabs_to_spaces& ...

  10. 基本语法 - PHP手册笔记

    PHP标记 如果文件内容是纯PHP代码,最好在文件末尾删除PHP结束标记.这可以避免在PHP结束标记之后万一意外加入了空格或者换行符,会导致PHP开始输出这些空白,而脚本中此时并无输出的意图.当然PH ...