我正在尝试升级到 Hibernate 4.3.8
和 Spring 4.1.6
版本 . 当我尝试初始化上下文获取异常时,如下所示 .
Caused by: java.lang.NoClassDefFoundError: [Lorg/hibernate/engine/FilterDefinition;
at java.lang.Class.getDeclaredMethods0(Native Method) ~[na:1.7.0_80]
at java.lang.Class.privateGetDeclaredMethods(Class.java:2625) ~[na:1.7.0_80]
at java.lang.Class.getDeclaredMethods(Class.java:1868) ~[na:1.7.0_80]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:571) ~[spring-core-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:488) ~[spring-core-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:501) ~[spring-core-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:474) ~[spring-core-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.determineCandidateConstructors(AutowiredAnnotationBeanPostProcessor.java:241) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineConstructorsFromBeanPostProcessors(AbstractAutowireCapableBeanFactory.java:1065) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1038) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getSingletonFactoryBeanForTypeCheck(AbstractAutowireCapableBeanFactory.java:860) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:790) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:542) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:436) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:412) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:186) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1105) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1044) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:942) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:533) ~[spring-beans-4.1.6.RELEASE.jar:4.1.6.RELEASE]
... 29 common frames omitted
Caused by: java.lang.ClassNotFoundException: org.hibernate.engine.FilterDefinition
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720) ~[catalina.jar:7.0.59]
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571) ~[catalina.jar:7.0.59]
... 49 common frames omitted
jar 列表
spring-aop-4.1.6.RELEASE.jar spring-data-jpa-1.2.0.RELEASE.jar,spring-security-web-4.0.1.RELEASE.jar,spring-aspects-4.1.6.RELEASE . jar , spring 表达-4.1.6.RELEASE.jar, spring 测试4.1.6.RELEASE.jar, spring 分批芯2.1.7.RELEASE.jar, spring JDBC-4.1.6.RELEASE . jar , spring TX-4.1.6.RELEASE.jar, spring 批基础设施2.1.7.RELEASE.jar, spring ORM-4.1.6.RELEASE.jar, spring 网络4.1.6.RELEASE . jar , spring beans -4.1.6.RELEASE.jar, spring OXM-4.1.6.RELEASE.jar, spring webmvc-4.1.6.RELEASE.jar, spring 上下文4.1.6.RELEASE.jar, spring 安全ACL-4.0.1.RELEASE.jar, spring webmvc的portlet-4.1.6.RELEASE.jar, spring 上下文支持-4.1.6.RELEASE.jar, spring 安全配置-4.0 . 1.RELEASE.jar, spring -WS-芯2.1.3.RELEASE.jar, spring 芯4.1.6.RELEASE.jar, spring 安全核心4.0.1.RELEASE.jar, spring XML- 2.1.3.RELEASE.jar,spring-data-commons-core-1.4.0.RELEASE.jar,spring-security-taglibs-4.0.1.RELEASE.jar hibernate-c3p0-4.3.8.Final.jar hibernate- envers-4.3.8.Final.jar hibernate-search-engine-4.5.3.Fin al.jar hibernate-commons-annotations-4.0.5.Final.jar hibernate-jpa-2.1-api-1.0.0.Final.jar hibernate-search-orm-4.5.3.Final.jar hibernate-core-4.3 . 8.Final.jar hibernate-jpamodelgen-4.3.8.Final.jar hibernate-validator-5.1.3.Final.jar hibernate-ehcache-4.3.8.Final.jar hibernate-search-4.5.3.Final.jar hibernate -entitymanager-4.3.8.Final.jar hibernate-search-analyzers-4.5.3.Final.jar
1 回答
Solution to your question
您可能在类路径中缺少hibernate-core-4.3.8.Final.jar . 它有FilterDefinition类 .
如果您使用Maven,请在POM.xml文件中添加此依赖项 .