`
javasogo
  • 浏览: 1770741 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Struts2源码粗略分析一:准备开发环境

 
阅读更多

1. 创建Tomcat工程

创建一个名为struts2的Tomcat工程,然后按照以下截图配置相关信息。

2. 配置struts-2.2.1源码

将下载下来的struts-2.2.1解压至工程下,相关内容请参考《Struts源码粗略分析一》。

然后将以下信息加入构建路径中:

  • struts-2.2.1/src/xwork-core/src/main/java
  • struts-2.2.1/src/xwork-core/src/main/resources
  • struts-2.2.1/src/core/src/main/java
  • struts-2.2.1/src/core/src/main/resources
  • struts-2.2.1/src/apps/blank/src/main/java
  • struts-2.2.1/src/apps/blank/src/main/resources

3. 目录结构

4. maven编译

因为源码自带的开发lib包内容不足,无法完全编译,所以要在目录

C:/Documents and Settings/Administrator/My Documents/Workspace/eclipse/struts2/struts-2.2.1/src/core
C:/Documents and Settings/Administrator/My Documents/Workspace/eclipse/struts2/struts-2.2.1/src/xwork-core

下执行命令,然后会生成以下两个target目录。

"C:/apache-maven-2.2.1/bin/mvn.bat" compile
C:/Documents and Settings/Administrator/My Documents/Workspace/eclipse/struts2/struts-2.2.1/src/core/target
"C:/apache-maven-2.2.1/bin/mvn.bat" compile C:/Documents and Settings/Administrator/My Documents/Workspace/eclipse/struts2/struts-2.2.1/src/xwork-core/target

这一步的作用就是让maven去下载编译和执行所用的第三方jar包,这样就不需要一个个找了。如果编译或运行过程中缺少什么jar文件,请到maven下的repository目录中查找。

5.配置eclipse构建路径

除了下面两个包外,将struts-2.2.1的lib目录下所有jar文件拷贝到WEB-INF的lib目录中,因为这两个包的内容我们手动生成

  • struts2-core-2.2.1.jar
  • xwork-core-2.2.1.jar

(类文件保留也无所谓,反正Tomcat运行时会先装载源码生产的class文件,如果ClassLoader在后续操作中发现已有相同的class文件被装载则忽略后续内容,但jar里的资源文件会影响装载,不信自己运行一下就知道了)

编译过程缺少或版本低的jar文件可以到mvn对应的repository中查找,然后添加到构建路径中。下面就是xwork-extra中应该包括的包:

/struts2/web-app/WEB-INF/xwork-extra
org
org.apache.commons
org.apache.commons.io
org.apache.commons.lang.xwork
org.objectweb.asm.xwork

PS:编译整个工程之后,需要将这部分内容手动拷贝至WEB-INF/classes文件夹下,这样程序运行时才不会出现类缺失的异常。

6.配置源码

将WEB-INF的lib中jar包全部加入构建路径

解压struts-2.2.1文件夹的lib下的xwork-core-2.2.1.jar文件至WEB-INF/xwork-extra/下,删除与xwork相关的class文件后把这些class文件也配置到构建路径中,以下是最终的配置信息

7. 配置web-app

将“/struts2/struts-2.2.1/src/apps/blank/src/main/webapp”下所有内容拷贝至“/struts2/web-app”下

8.启动第一个Struts2应用

编译所有的源码文件后启动Tomcat,如果中途有任何错误,请到maven的repository目录中查找相关jar包直至顺利通过,Good luck!!!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics