在网上可以轻松找到很多解决方法,找到了原因。
在MyEclipse里运行项目发现ClassNotFound,但是我项目的jar包里明明有啊!
最后找到原因:说是maven dependencies没有放到Deployment Assembly中
但是我add的时候,发现library下找不到maven的build path。
网上说是:右键项目--maven-enable,但是我的eclipse里找不到
还有就是手动改.classpath文件了,我是这么改的
我在.classpath下发现了这段
<classpathentry exported="true" kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
<attribute name="org.eclipse.jst.component.nondependency" value=""/>
</attributes>
</classpathentry>
就是它惹的祸!!!
于是我删除了这段,F5刷新项目,报jar包找不到错误,我Update Project了下项目(Alt+F5)。然后改了java编译版本到1.7,和build path中也改到1.7
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
在.classpath下变成了这样。
这时候我再去尝试在Deployment Assembly中加入Java Build Path Entries就找到了maven的lib
添加后变成了这样:
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
</attributes>
</classpathentry>
用ide的缺点就是不知道它帮你干了啥,导致一些元素不可控,看来自己对java web的基础和eclipse的使用了解的还不够!