标签:apach erro 应该 tar noclass 完成后 点击 java 9.png
---恢复内容开始---
最近在学JavaEE,开始搭建Struts 2框架,用的IDE是IntelliJ IDEA,以下为主要步骤:
一、新建工程项目:
①Create New Project => 选择Java Enterprise => Struts 2(2.5.13) => Download => Next:
②为项目命名=>Finished:
二、配置tomcat:
点击Deployment,在Application context中填入自定义访问路径名,点击OK/Apply:
三、配置工程项目:
进入Project Structure,点击Artifacts,双击Struts2-2.5.13将其添加至WEB-INF下的lib文件夹中,点击OK:
四、配置web.xml文件:
当配置web.xml文件时,发现其中filter-class中的类路径找不到,在观察之后发现该路径中ng多于,去掉即可:
五、配置structs.xml:
实现一个简单的HelloWorld功能:
在配置完以上环境之后点击运行,但是发现报出了一大堆错误:
观察出错原因,引起报错的原因是Caused by: java.lang.NoClassDefFoundError: Lorg/apache/logging/log4j/Logger; 以及Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.Logger;
说明IDEA自动下载的Struts 2的jar包不全,因此去官网(http://struts.apache.org/download.cgi)上下载精简版Struts 2的jar包,下载完成后重新对工程环境进行配置:
①删去IDEA下载的包:
②添加下载的包到工程的lib文件夹中(注意要将下载的jar文件放在struts-2.5.13-min-lib\路径下,而非struts-2.5.13-min-lib\struts-2.5.13\lib\路径下)选择Jar Directory:
在配置完以上环境后,重启服务器,仍然报错:
Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean
Caused by: Bean type class com.opensymphony.xwork2.ObjectFactory with the name struts has already been loaded by bean
在查阅了一些资料后,分析可知,应该是两个相同的jar包发生冲突,观察out文件夹下的WEB-INF中的lib文件夹,发现果然存在重复的JAR包:
删除多余的JAR包后再次运行tomcat,运行成功:
框架搭建完成,撒花~~
---恢复内容结束---
IntelliJ IDEA搭建Structs 2框架步骤简介
标签:apach erro 应该 tar noclass 完成后 点击 java 9.png
原文地址:http://www.cnblogs.com/Revenent-Blog/p/7623015.html