预制条件和spring源码导入eclipse中一样,下面直接给出导入eclipse的步骤。

步骤:

1. 下载struts相应版本的源码 http://struts.apache.org/download.cgi 。我这里下载的是struts-2.3.16-all.zip。下载完成后解压到本地目录。

2. struts的源码是通过maven管理的,所以需要下载maven http://maven.apache.org/download.cgi 。下在完成后同样解压到本地目录,然后配置MAVEN_HOME、PATH环境变量。如果配置正确的话在cmd中输入:mvn -v 能够正确显示其版本号。此外需要修改本地仓库的位置:修改 %MAVEN_HOME%/conf/settings.xml文件,在settings中间配置repository:

  1. settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  2. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  4. <!-- localRepository
  5. | The path to the local repository maven will use to store artifacts.
  6. |
  7. | Default: ${user.home}/.m2/repository
  8. <localRepository>/path/to/local/repo</localRepository>
  9. -->
  10. <localRepository>E:/Maven/apache-maven-3.1.1/repositories</localRepository>
  11. .........

settings.xml

该目录其实就是指定本地仓库的位置,也就是后续通过maven下载的包默认都放到该路径下。

3. 进入struts源码根路径下的src文件夹,可以看到一个pom文件。其实我们这时候就可以直接打开控制台输入: mvn eclipse:eclipse 来进行编译。不过这样后面会碰到编译失败的问题,分析后发现其实需要注释掉两个地方,一个是src文件夹下的pom.xml文件中:

  1. <modules>
  2. <module>xwork-core</module>
  3. <module>core</module>
  4. <module>apps</module>
  5. <module>plugins</module>
  6. <!-- 注释掉这两个子模块 -->
  7. <!--<module>bundles</module>
  8. <module>archetypes</module>-->
  9. </modules>

src/pom.xml

一个是src/app/pom.xml中:

  1. <modules>
  2. <module>blank</module>
  3. <!-- 注释掉这个模块 -->
  4. <!-- <module>jboss-blank</module> -->
  5. <module>mailreader</module>
  6. <module>portlet</module>
  7. <module>showcase</module>
  8. <module>rest-showcase</module>
  9. </modules>

src/app/pom.xml

注释掉之后在src目录下打开控制台输入: mvn eclipse:eclipse 即可。

4. eclipse需要安装maven插件。可以在eclipse的 help--->marketplace中搜索maven,然后安装如下版本即可:

安装完成之后,打开 windows--->preferences,搜索maven,配置instalations为MAVEN_HOME和user settings为MAVEN_HOME/conf/settings.xml即可:

4. 编译完成之后即可在eclipse中进行导入。实际上我们只需导入: core 和 xwork-core两个工程即可,其他工程用不到。

接下来就可以随意的对struts源码进行调试了。

将struts源码导入eclipse的更多相关文章

  1. spring源码解析——spring源码导入eclipse

    一.前言     众所周知,spring的强大之处.几乎所有的企业级开发中,都使用了spring了.在日常的开发中,我们是否只知道spring的配置,以及简单的使用场景.对其实现的代码没有进行深入的了 ...

  2. Tomcat源码导入eclipse的步骤

    Tomcat源码导入eclipse 一.下载源码 1.  进入Apache 官网:http://tomcat.apache.org/ 2.  在左边侧选择要下载的源码的版本. 3.  或者直接通过Ar ...

  3. tomcat源码导入eclipse步骤

    1. 获取源代码 方式一:从官网http://tomcat.apache.org/download-70.cgi 直接下载,官网提供了Binary 和 Source Code两种下载方式,要研究tom ...

  4. Tomcat源码导入Eclipse测试

    想要研究下Tomcat的体系结构或者源码,最好将Tomcat的源码导入到ide中,编写实例进行代码跟踪(debug). 这里参考了网上一些资料,将自己操作过程记个流水账. 准备: 1.Tomcat源码 ...

  5. tomcat源码导入eclipse

    1. 获取源代码 方式一:从官网http://tomcat.apache.org/download-70.cgi 直接下载,官网提供了Binary 和 Source Code两种下载方式,要研究tom ...

  6. 如何将OpenTSDB源码导入eclipse

    OpenTSDB的官网上介绍了如何将OpenTSDB源码导入eclipse,官方链接,但步骤超级繁琐,还有一个简便方法,下面以导入OpenTSDB2.0.0为例. 1. 下载OpenTSDB2.0.0 ...

  7. 将github上的项目源码导入eclipse详细教程

    将github上的项目源码导入eclipse详细教程 学习了: http://blog.csdn.net/itbiggod/article/details/78462720

  8. 将Android源码导入eclipse中的方法以及编译Android源码指定模块

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/53365659 将android源码导入eclipse.androidstudio. ...

  9. Dubbo源码导入Eclipse遇到的问题

    1.怎么将Dubbo源码导入到Eclipse 方法一: 打开Eclipse,File-->Import-->maven-->Exsting Maven Projects,选择dubb ...

随机推荐

  1. DDD:建模原语 之 四象图(转载的神文)

    “模型.状态和行为特征.场景”和“四象图”,建模观的命名与立象. 建模原语:四象图 作者:achieveidea@gmail.com 命名:模型.结构特征.行为特征.场景(及其规约). 释义:模型,描 ...

  2. 使用C语言描述静态链表和动态链表

    静态链表和动态链表是线性表链式存储结构的两种不同的表示方式. 静态链表的初始长度一般是固定的,在做插入和删除操作时不需要移动元素,仅需修改指针,故仍具有链式存储结构的主要优点. 动态链表是相对于静态链 ...

  3. [linux]查看linux下端口占用

    netstat netstat -an | grep 23 (查看是否打开23端口) 查看端口占用情况的命令:lsof -i [root@www ~]# lsof -i COMMAND PID USE ...

  4. Direct3D11学习:(九)绘制基本几何体

    转载请注明出处:http://www.cnblogs.com/Ray1024 一.概述 Direct3D中很多复杂的几何效果都是由基本的几何体组合而成的,这篇文章中,我们来学习集中常见的基本几何体的绘 ...

  5. SQL Server里因丢失索引造成的死锁

    在今天的文章里我想演示下SQL Server里在表上丢失索引如何引起死锁(deadlock)的.为了准备测试场景,下列代码会创建2个表,然后2个表都插入4条记录. -- Create a table ...

  6. Vim杂记:Sublime的配色方案

    一.前言 爱美之心人皆有之,sublime的配色实在好看,于是希望Vim也能这样. 二.配置 1.下载monokai(https://github.com/sickill/vim-monokai),然 ...

  7. QCustomplot使用分享(四) QCPAbstractItem

    一.是什么 说起图,大家一下就可能想到折线图.柱状图和饼图等,但是除了这些显眼的东西以外其实还有很多东西辅助的存在着,有了这些辅助的东西图才会看起来有意义,或者说更加的真实.有说服力.这些东西都包括那 ...

  8. 四则运算APP(BUG发掘)

    BUG: 1.有几率会出现一样的题目. 2.题目会出现两个一样的答案. 3.做题结束后不能返回主界面或者重新开始. 感想: 1.题目应该按年级分类出题. 2.主界面可以添加更多功能 如自己输入题目数, ...

  9. JS代码的位置与事件响应代码块的封装问题

    JS代码的位置       我们可以将JavaScript代码放在html文件中任何位置,但是我们一般放在网页的head或者body部分.   放在<head>部分最常用的方式是在页面中h ...

  10. PHP功能齐全的发送邮件类

    下面这个类的功能则很强大,不但能发html格式的邮件,还可以发附件 <?php class Email { //---设置全局变量 var $mailTo = ""; // ...