java.lang.ClassNotFoundException但是项目里明明已经存在

本文为博主原创,转载需注明出处:

  在开始新的项目的时候,启动报 java.lang.ClassNotFoundException,但在项目中是可以定位到缺少的类:异常为:

Caused by: java.lang.NoClassDefFoundError: com/pplive/ppcloud/common/base/BaseManager
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2529)
at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:872)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1321)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1180)
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
at java.lang.Class.getDeclaredFields(Class.java:1916)
at org.apache.catalina.util.Introspection.getDeclaredFields(Introspection.java:106)
at org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation(WebAnnotationSet.java:269)
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:137)
at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:69)
at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:336)
at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:776)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:307)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5262)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
... 6 more
Caused by: java.lang.ClassNotFoundException: com.pplive.ppcloud.common.base.BaseManager
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1352)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1180)
... 27 more

在项目中可以找到对应的类,当我定位到类时,发现该类是在另一个项目中,另一个项目被现在项目以jar包的方式引用,

当我右键项目--->>properties--->>选择Deployment Assembly,查看项目依赖的jar包资源时,发现引用的另一个项目的jar包没有引用进来。

解决办法:

右键项目--->>properties--->>选择Deployment Assembly--->> add--->>java Build path entries--->>next--->>全选你导入的jar包--->>finish--->>apply--->>ok;

然后重启项目,就ok了。

java.lang.ClassNotFoundException但是项目里明明已经存在

留言以鼓励自己和看我博客的人:

你不是我,怎知我走过的路,心中的苦与乐。

上一篇:看完这篇微服务架构设计思想,90%的Java程序员都收藏了


下一篇:互联网保险O2O平台微服务架构设计(转)