maven 项目出现 java.lang.ClassNotFoundException: or...

严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

在网上找了些资料,有的说是少jar包,把有关spring的jar包复制到/WEB-INF/lib下面就好了,但这是maven项目,不须要这样作...

还有一个缘由是,项目不是maven项目,我这个以前是普通的web项目,只是加上了一个pom.xml而已
须要修改的有两个地方
1.项目根目录下的.project文件,用记事本打开,加入如下代码(把原来的<buildSpec>节点和<natures>替换了): javascript

复制代码
<buildSpec>         <buildCommand>             <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>             <arguments>             </arguments>         </buildCommand>         <buildCommand>             <name>org.eclipse.jdt.core.javabuilder</name>             <arguments>             </arguments>         </buildCommand>         <buildCommand>             <name>org.eclipse.wst.common.project.facet.core.builder</name>             <arguments>             </arguments>         </buildCommand>         <buildCommand>             <name>org.eclipse.wst.validation.validationbuilder</name>             <arguments>             </arguments>         </buildCommand>         <buildCommand>             <name>org.eclipse.m2e.core.maven2Builder</name>             <arguments>             </arguments>         </buildCommand>         <buildCommand>             <name>org.maven.ide.eclipse.maven2Builder</name>             <arguments>             </arguments>         </buildCommand>     </buildSpec>     <natures>         <nature>org.maven.ide.eclipse.maven2Nature</nature>         <nature>org.eclipse.m2e.core.maven2Nature</nature>         <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>         <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>         <nature>org.eclipse.wst.common.project.facet.core.nature</nature>         <nature>org.eclipse.jdt.core.javanature</nature>         <nature>org.eclipse.wst.jsdt.core.jsNature</nature>     </natures> 
复制代码


2.项目根目录下的.classpath,找到 java

<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>

替换为: web

<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/> </attributes> </classpathentry>

新增长一个classpathentry节点: spring

<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/> </attributes> </classpathentry>

OK,到这一步已经完成了,到eclipse中刷新项目,而后从新启动tomcat,错误已经解决!



在.classpath文件中: tomcat

<classpathentry kind="output" path="target/classes"/>

改成: app

<classpathentry kind="output" path="WebContent/WEB-INF/classes"/>
相关文章
相关标签/搜索