将struts源码导入eclipse
预制条件和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 .........
该目录其实就是指定本地仓库的位置,也就是后续通过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/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目录下打开控制台输入: 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源码进行调试了。
- asp.net web api 文件上传
- 使用MySQL正则表达式 __MySQL必知必会
- 史上最好用的免费翻蔷利器
- asp.net web api 接口安全与角色控制
- TensorFlow从0到1 | 第十五章 重新思考神经网络初始化
- asp.net web api 下载之断点续传
- apache2.4.x三种MPM介绍
- 没有自己的服务器如何学习生物数据分析(上篇)
- 【直播】我的基因组57:最简陋的祖源分析
- asp.net web api 使用Odata
- TensorFlow从0到1丨第十六篇 L2正则化对抗“过拟合”
- TensorFlow从0到1 | 第十七章 Step By Step上手TensorBoard
- C#要点
- MySQL索引背后的数据结构及算法原理
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- PAT (Basic Level) Practice (中文)1004 成绩排名 (20 分)
- PAT (Basic Level) Practice (中文)1020 月饼 (25 分)
- 201709-2ccf计算机职业资格认证考试第二题公共钥匙盒
- SAP Spartacus里cx-carousel的实现
- 技术分享 | 改写 mysqldump 解决 DEFINER 问题
- CNS图表复现04—单细胞聚类分群的resolution参数问题
- 学习Vue3.0,先从搭建环境开始
- AIM Tech Round 5 (rated, Div. 1 + Div. 2)C. Rectangles
- PAT (Basic Level) Practice (中文)1006 换个格式输出整数 (15 分)
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(二)语法分析
- PAT (Basic Level) Practice (中文)1023 组个最小数 (20 分)
- Angular里使用createEmbeddedView动态加入新的模板元素
- PAT (Basic Level) Practice (中文)1002 写出这个数 (20 分)
- [笔记整理]几个有点重要的知识点
- PAT (Basic Level) Practice (中文)1005 继续(3n+1)猜想 (25 分)