struts2源码分析,首先就是要下载struts2的源码包,如果要方便研究,肯定是生成eclipse项目的形式更方便。struts2是采用maven编译和管理代码的。因此在编译struts2源码前,首先要确保你安装了maven环境,不会安装maven的请看这篇文章:在windows下安装maven。
1、下载struts2源码包
到struts2官网下载struts2的源码包,我下载的是struts-2.3.24.1-all,下载完后解压,比如我把struts-2.3.24.1-all.zip解压到G:\struts-2.3.24.1-all下。
2、用maven编译struts2源码为eclipse项目
cd到struts2的src目录下,src的目录为:G:\struts-2.3.24.1-all\struts-2.3.24.1\src。并在cmd窗口输入以下命令:mvn eclipse:eclipse
会提示找不到bom、bundles和archetypes,具体错误提示如下:[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] Child module G:\struts-2.3.24.1-all\struts-2.3.24.1\src\bom of G:\struts-2.3.24.1-all\struts-2.3.24.1\src\pom.xml does not exist @
[ERROR] Child module G:\struts-2.3.24.1-all\struts-2.3.24.1\src\bundles of G:\struts-2.3.24.1-all\struts-2.3.24.1\src\pom.xml does not exist @
[ERROR] Child module G:\struts-2.3.24.1-all\struts-2.3.24.1\src\archetypes of G:\struts-2.3.24.1-all\struts-2.3.24.1\src\pom.xml does not exist @
此时,修改G:\struts-2.3.24.1-all\struts-2.3.24.1\src下的pom.xml文件,把modules下的bom、bundles和archetypes注释掉即可。
xwork-core
core
apps
plugins
注释完之后,再次在cmd下输入mvn eclipse:eclipse命令。会提示找不到jboss-blank,此时,修改G:\struts-2.3.24.1-all\struts-2.3.24.1\src\apps下的pom.xml文件,把modules下的jboss-blank注释掉即可。
blank
mailreader
portlet
showcase
rest-showcase
注释完之后,再次在cmd下执行mvn eclipse:eclipse命令。经过一段时间的编译之后,struts2项目终于编译成功啦。struts2项目的编译时间长短和你的电脑配置和当前网速有关。请耐心等待哦~
3、把struts2源码导入eclipse
eclipse导入strut2源码就很简单了,我这就不详细说明了,下图展示了struts2源码导入eclipse的项目结构。项目很多,我只截取了一小部分。