【问题标题】:Implicit super constructor QueryDslRepositorySupport() is undefined for default constructor. Must define an explicit constructor默认构造函数未定义隐式超级构造函数 QueryDslRepositorySupport()。必须定义显式构造函数
【发布时间】:2013-03-10 09:56:19
【问题描述】:

我使用 Spring Roo + Spring Data + QueryDSL,我有以下类/接口:

public interface FamilyAdvertisementRepositoryCustom {
}

@RooJpaRepository(domainType = FamilyAdvertisement.class)
public interface FamilyAdvertisementRepository extends FamilyAdvertisementRepositoryCustom {
}

public class FamilyAdvertisementRepositoryImpl extends QueryDslRepositorySupport implements FamilyAdvertisementRepositoryCustom {
   //NO CONSTRUCTOR
}

全部在以下包中:com.bignibou.repository;

使用以下配置:

<repositories base-package="com.bignibou.repository" />

但是,我收到此错误:

[ERROR] Failed to execute goal org.codehaus.mojo:aspectj-maven-plugin:1.2:compile (default) on project bignibou: Compiler errors : [ERROR] error at public class FamilyAdvertisementRepositoryImpl extends QueryDslRepositorySupport implements FamilyAdvertisementRepositoryCustom { [ERROR] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [ERROR] /home/julien/Documents/donnees/projets/site-garde-enfants/java/bignibou/src/main/java/com/bignibou/repository/FamilyAdvertisementRepositoryImpl.java:5:0::0 Implicit super constructor QueryDslRepositorySupport() is undefined for default constructor. Must define an explicit constructor

QueryDslRepositorySupport 类似乎不再有默认构造函数,而以前是这样。为什么会这样??

我做错了什么?

【问题讨论】:

    标签: jpa spring-roo spring-data spring-data-jpa


    【解决方案1】:

    引入更改是为了强制从 getBuilder() 返回的 Builder 为单个域类型。只需创建一个不带参数的构造函数,然后使用您为其实现存储库的域类型调用超类的构造函数。

    【讨论】:

    • 谢谢奥利弗。完毕。我只是担心这会破坏现有应用程序升级到 Spring data jpa 的当前版本...
    • 对,这就是我们在主要版本的凹凸(到 1.2 IIRC)中引入它的原因。
    猜你喜欢
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    • 2010-11-14
    • 1970-01-01
    • 2014-06-17
    • 2020-09-29
    • 2014-11-06
    • 2023-04-08
    相关资源
    最近更新 更多