首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到类,即使它应该在类路径上

找不到类,即使它应该在类路径上
EN

Stack Overflow用户
提问于 2012-05-04 01:01:03
回答 2查看 4.2K关注 0票数 3

当我关闭在Tomcat上运行的war时,我得到了这个错误:

代码语言:javascript
复制
[2012-05-03 11:55:36,082] ERROR - org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroyBean(501) | Destroy method on bean with name 'threadPoolTaskExecutor' threw an exception
java.lang.NoClassDefFoundError: org/springframework/orm/jpa/EntityManagerFactoryUtils
    at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessBeforeDestruction(PersistenceAnnotationBeanPostProcessor.java:357)
    at org.springframework.beans.factory.support.DisposableBeanAdapter.destroy(DisposableBeanAdapter.java:193)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroyBean(DefaultSingletonBeanRegistry.java:498)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingleton(DefaultSingletonBeanRegistry.java:474)
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.destroySingletons(DefaultSingletonBeanRegistry.java:442)
    at org.springframework.context.support.AbstractApplicationContext.destroyBeans(AbstractApplicationContext.java:1066)
    at org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1040)
    at org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext.java:958)
Caused by: java.lang.ClassNotFoundException: org.springframework.orm.jpa.EntityManagerFactoryUtils
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1523)
    ... 8 more

在我的pom.xml中,我将spring-orm 3.1.1作为依赖项。更奇怪的是,我可以进入PersistenceAnnotationBeanPostProcessor类,这是一个spring-orm 3.1.1.RELEASE类,但它找不到同一个jar中的EntityManagerFactoryUtils类。我猜这一定与它的抽象或静态有关,但我不确定进一步研究这个问题的方向。它看起来真的应该是可用的。

有人知道为什么会发生这样的事情吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-04 16:44:12

实际上,这可能是一个排除问题(尝试调用mvn dependency:tree来解决这个问题)。

你的战争中有罐子吗?在Tomcat库中有没有另外一个Spring jar?这可能是类加载器的问题。

票数 3
EN

Stack Overflow用户

发布于 2015-01-30 16:25:12

我通过删除其中一个maven模块中的冗余依赖项解决了同样的问题。我通过一些其他模块有直接依赖和间接依赖,这导致了这种行为。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10436035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档