我有一个使用struts2和spring 3的web应用程序来配置spring我在项目中使用eclipse和tomcat中的构建路径添加了所需的库。 我也在web.xml中添加了监听器,但是当我想运行应用程序时,会出现以下错误: 严重:配置类org.springframework.web.context.ContextLoaderListener的应用程序侦听器时出错 java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener 我用Google搜索过多但没有发生任何事情...... 有人告诉我一定要在应用程序库和tomacat中添加spring-web.jar,但没有任何变化.. 请帮忙
类路径:
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre6">
<attributes>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
<classpathentry exported="true" kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v6.0">
<attributes>
<attribute name="owner.project.facets" value="jst.web"/>
</attributes>
</classpathentry>
<classpathentry exported="true" kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.USER_LIBRARY/hibernate"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/antlr-2.7.6.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/asm-attrs.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/asm.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/cglib-2.1.3.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-beanutils-1.8.2.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-collections-3.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-collections-3.2.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-digester-2.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-fileupload-1.2.2.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-logging-1.0.4.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-logging-1.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/commons-logging.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/DateConverter.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/dom4j-1.6.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/ejb3-persistence.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/freemarker-2.3.13.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/groovy-all-1.7.5.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/hibernate-annotations.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/hibernate-commons-annotations.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/hibernate-validator.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/hibernate3.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/hsqldb.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/imaging.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/iText-2.1.7.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/jasperreports-4.5.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/javassist-3.9.0.GA.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/jdt-compiler-3.1.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/jstl-1.2.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/jta-1.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/junit-3.8.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/log4j-1.2.15.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/ocrs12.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/ognl-2.6.11.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/orai18n.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/simplecaptcha-1.1.1.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/slf4j-api-1.5.8.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/slf4j-log4j12-1.5.8.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/sqljdbc4.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/standard.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/struts2-convention-plugin-2.1.6.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/struts2-core-2.1.6.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/struts2-fullhibernatecore-plugin-1.4-GA.jar"/>
<classpathentry exported="true" kind="lib" path="WebContent/WEB-INF/lib/xwork-2.1.2.jar"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.USER_LIBRARY/spring"/>
<classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
答案 0 :(得分:1)
当eclipse无法正确修改应用程序到tomcat服务器时,我常常遇到这个问题org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException
(当我在一天中第一次或在更大的svn结账后开始eclipse时会发生这种情况)
我的情况下,它有助于执行一系列操作(并始终等待下一步,直到前一步完成!!)
答案 1 :(得分:0)
我建议使用maven而不是手动摆弄eclipse类路径,如果你有自由的话。以下是您可以遵循的简单步骤:
mvn archetype:generate -DgroupId=com.test -DartifactId=test -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
这将生成所需的maven项目结构。然后编辑pom.xml文件,如下所示。
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.test</groupId>
<artifactId>test</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>test Maven Webapp</name>
<url>http://maven.apache.org</url>
<repositories>
<repository>
<id>java.net</id>
<url>http://download.java.net/maven/2/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.0.0.RELEASE</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.1.8</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.7.ga</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
<version>2.7.7</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>test</finalName>
</build>
</project>
构建项目:
mvn clean package
生成eclipse配置源文件:
mvn eclipse:eclipse -DdownloadSources=true
此步骤足以创建项目结构,该结构在类路径中需要具有附加源的库。
最后,您可以在Eclipse中导入项目。
File > Import > General > Existing project into Workspace > Select the project directory
下载并安装maven
答案 2 :(得分:0)
我看到你使用eclipse wtp插件运行web应用程序,然后你可以在文件系统中找到扩展web应用程序,并检查lib目录中有spring.jar, 你也可以看到My application does not see ContextLoaderListener