【问题标题】:Spring Data JPA Repository ErrorSpring Data JPA 存储库错误
【发布时间】:2017-06-08 10:44:06
【问题描述】:

我在部署 Spring Web 应用程序期间收到以下错误。

java.lang.AbstractMethodError: org.springframework.data.jpa.repository.query.JpaQueryLookupStrategy$CreateIfNotFoundQueryLookupStrategy.resolveQuery(Ljava/lang/reflect/Method;Lorg/springframework/data/repository/core/RepositoryMetadata;Lorg/springframework/data/projection/ProjectionFactory;Lorg/springframework/data/repository/core/NamedQueries;)Lorg/springframework/data/repository/query/RepositoryQuery;
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1578) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) ~[spring-beans-4.3.2.RELEASE.jar:4.3.2.RELEASE]

下面的链接建议检查 spring-data-commons 和 spring-data-jpa 之间的兼容性,这很好。

Spring CrudRepository throws AbstractMethodError on custom query method definition

还有什么能引起这个问题的吗?

下面是我的仓库代码

public interface MyRepository extends JpaRepository<MyEntityy, Long>

我将 spring-data-commons 更正为 spring-data-commons-1.11.0.RELEASE,现在我得到一个不同的错误。

java.lang.AbstractMethodError: org.springframework.data.repository.core.support.RepositoryFactorySupport.getTargetRepository(Lorg/springframework/data/repository/core/RepositoryMetadata;)Ljava/lang/Object;; nested exception is org.springframework.beans.factory.BeanCreationException:

【问题讨论】:

  • 你的仓库类是什么样子的?
  • 它是扩展 JPA 存储库的简单类。在问题中添加了存储库定义
  • 您是否遵循建议以确保您的依赖项相互兼容?
  • “spring-data-commons 和 spring-data-jpa [..] 之间的兼容性很好。” - 我不信。请发布mvn dependency:dependency-tree -Dverbose 的输出或您正在使用的构建工具的等效项。
  • 我正在使用 spring-data-jpa-1.9.0.RELEASE 和 spring-data-common-1.12.0.RELEASE - 看起来这两个是兼容的。从哪里可以找到 spring-data-jpa-1.9.0.RELEASE 的兼容 jar

标签: spring-data spring-data-jpa


【解决方案1】:

该问题与 Spring-data-JPA 和 Spring-Data-Commons 之间的不兼容有关。

Spring-Data-JPA-1.9.0 抱怨 Spring-Data-Commons-1.11.0

我的项目依赖于 spring-data-elasticsearch,它提取了不同版本的 spring-data-commons - 因此我遇到了上述问题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-06
    • 2016-12-26
    • 2015-12-15
    • 1970-01-01
    • 2018-10-06
    • 2018-06-15
    • 1970-01-01
    相关资源
    最近更新 更多