Spring项目构建期间的AbstractMethodError

时间:2016-06-29 01:58:33

标签: hibernate maven spring-mvc

AbstractMethodError在Spring框架中的spring maven构建期间发生。

使用:

  • spring4.3.0.RELEASE
  • hibernate5.0.3.Final
  • hibernate-search5.2.1.Final

这是我对pom.xml的一部分:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <hibernate-version>5.0.3.Final</hibernate-version>
    <hibernate-search.version>5.2.1.Final</hibernate-search.version>
    <hibernate-entitymanager.version>5.0.6.Final</hibernate-entitymanager.version>
    <hibernate-validator.version>5.2.4.Final</hibernate-validator.version>
    <javax-el.version>2.2.4</javax-el.version>
    <hibernate-Beta1-version>5.0.0.Beta1</hibernate-Beta1-version>
    <spring-version>4.3.0.RELEASE</spring-version>

    <slf4j-version>1.7.21</slf4j-version>
    <log4j-version>1.2.17</log4j-version>
    <mysql-version>5.1.39</mysql-version>
    <druid.version>1.0.20</druid.version>
    <aspectj-version>1.8.9</aspectj-version>
    <guava.version>19.0</guava.version>
    <poi.version>3.14</poi.version>
    <jackson.version>2.7.5</jackson.version>
    <commons-fileupload.version>1.3</commons-fileupload.version>
    <ckfinder-version>2.3</ckfinder-version>

    <lucene.version>3.6.2</lucene.version>

错误堆栈跟踪:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in URL [jar:file:/C:/yunlian/project/cloudsLotus/51itspace/admin/target/admin/WEB-INF/lib/common-1.0-SNAPSHOT.jar!/spring-hibernate.xml]: Invocation of init method failed; nested exception is java.lang.AbstractMethodError
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1578)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:187)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1048)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1018)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:570)
... 88 more
Caused by: java.lang.AbstractMethodError
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:278)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:444)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:708)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:724)
at org.springframework.orm.hibernate5.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:504)
at org.springframework.orm.hibernate5.LocalSessionFactoryBean.afterPropertiesSet(LocalSessionFactoryBean.java:488)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
... 99 more

1 个答案:

答案 0 :(得分:0)

可能hibernate jar在应用程序的类路径中不可用。检查hibernate是否在pom.xml中添加为依赖项,如下所示。

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>4.3.11.Final</version>
</dependency>