预制条件和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:
代码语言:javascript复制 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 .........
该目录其实就是指定本地仓库的位置,也就是后续通过maven下载的包默认都放到该路径下。
3. 进入struts源码根路径下的src文件夹,可以看到一个pom文件。其实我们这时候就可以直接打开控制台输入: mvn eclipse:eclipse 来进行编译。不过这样后面会碰到编译失败的问题,分析后发现其实需要注释掉两个地方,一个是src文件夹下的pom.xml文件中:
代码语言:javascript复制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/app/pom.xml中:
代码语言:javascript复制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目录下打开控制台输入: 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源码进行调试了。