您是否在Gradle输出中看到生成的QClass?从您的错误看来,它已经过了应该生成它们的地步。
我认为问题是您没有配置
JPAAnnotationProcessor。为方便起见,通过将:jpa附加到querydsl-
apt依赖项中来完成此操作。在Maven中,您可以手动应用插件。
我的build.gradle中有以下与querydsl相关的内容。
idea { module { sourceDirs += file('generated/') generatedSourceDirs += file('generated/') }}[...]compile "com.querydsl:querydsl-root:$querydslVersion"compile "com.querydsl:querydsl-jpa:$querydslVersion"compile "com.querydsl:querydsl-apt:$querydslVersion:jpaidea块仅在IDEA中自动配置生成的源目录,以便in-IDE构建正常工作。
编辑:
该
JPAAnnotationProcessor输出看起来像下面。
Note: Running JPAAnnotationProcessorNote: Serializing SupertypesNote: Generating com.myclass.example.QMappedSuperClass for [com.myclass.example.MappedSuperClass]Note: Serializing Entity typesNote: Generating com.myclass.example.QMyClass for [com.myclass.example.MyClass]
编辑:
我对ewerk插件不熟悉,所以我看了看。看来它正在尝试为您激活JPAAnnotationProcessor。您可能需要根据此处的文档设置JPA标志,因为它的默认值为false。
请参阅有关依赖关系问题的注释线程。编辑:对于Gradle 4.6+,您可以使用
annotationProcessor语法。
api "com.querydsl:querydsl-root:$querydslVersion"api "com.querydsl:querydsl-jpa:$querydslVersion"annotationProcessor "com.querydsl:querydsl-apt:$querydslVersion:jpa"



