当前位置: 首页 > 知识库问答 >
问题:

Java11 QueryDSL 4 Gradle 5 SpringBoot 2.1-不生成QClass

郎玮
2023-03-14

我正在尝试将QueryDSL、Gradle和Springboot集成到title的版本中。我将annotationProcessors添加到gradle中,但Intellij仍然没有生成QClasses。我尝试了社区的建议来使用插件“gradle”。插件。通用域名格式。埃沃克。格拉德尔。插件:querydsl plugin'但这没有帮助。

dependencies{
   annotationProcessor("org.projectlombok:lombok:1.18.4")
   annotationProcessor("com.querydsl:querydsl-apt:4.2.1")
   annotationProcessor("org.springframework.boot:spring-boot-starter-data-jpa:2.1.1.RELEASE")

   compileOnly("org.projectlombok:lombok:1.18.4")
   implementation("com.querydsl:querydsl-jpa:4.2.1")
   implementation("com.querydsl:querydsl-apt:4.2.1:jpa")
   implementation("org.springframework.boot:spring-boot-starter-data-jpa:2.1.1.RELEASE")
   implementation("org.springframework.boot:spring-boot-starter-web:2.1.1.RELEASE")
}

共有3个答案

楚硕
2023-03-14

遵循完全相同的命令

sourceSets {
  generated {
    java {
      srcDirs = ['build/generated/sources/annotationProcessor/java/main']
    }
  }
}


dependencies {
    api 'com.querydsl:querydsl-jpa:4.4.0'
    annotationProcessor 'org.projectlombok:lombok'
    annotationProcessor('com.querydsl:querydsl-apt:4.4.0:jpa')
    annotationProcessor('javax.annotation:javax.annotation-api')

}
柳高卓
2023-03-14

我将为您提供我的工作配置

ext {
    queryDslVersion = '4.2.1'
    lombokVersion = '1.8.6'
}
// https://stackoverflow.com/questions/42441844/annotation-processor-in-intellij-and-gradle/54611475#54611475
compileJava {
    options.annotationProcessorPath = configurations.annotationProcessor
}

dependencies {
  // ...

    compile(
            "com.querydsl:querydsl-core:${queryDslVersion}",
            "com.querydsl:querydsl-jpa:${queryDslVersion}"
    )

    compileOnly "org.projectlombok:lombok:${lombokVersion}"

    annotationProcessor "com.querydsl:querydsl-apt:${queryDslVersion}:jpa",
            "org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.2.Final",
            "javax.annotation:javax.annotation-api:1.3.2",
            "org.projectlombok:lombok:${lombokVersion}"
}

使用Gradle 5.2

宣煜
2023-03-14

您需要提供具体的注释处理器“:jpa”

annotationProcessor("com.querydsl:querydsl-apt:4.2.1:jpa")

这应该是可行的:

dependencies{
   annotationProcessor("org.projectlombok:lombok:1.18.4")
   annotationProcessor("com.querydsl:querydsl-apt:4.2.1:jpa")
   annotationProcessor("org.springframework.boot:spring-boot-starter-data-jpa:2.1.1.RELEASE")

   compileOnly("org.projectlombok:lombok:1.18.4")
   implementation("com.querydsl:querydsl-jpa:4.2.1")
   implementation("org.springframework.boot:spring-boot-starter-data-jpa:2.1.1.RELEASE")
   implementation("org.springframework.boot:spring-boot-starter-web:2.1.1.RELEASE")
}
 类似资料:
  • 我试图建立APK,以张贴我的请求在离子在游戏商店。但是当涉及到下面的命令时,我得到了错误: PS c:\projetos\xxx>jarsigner-verbose-sigalg sha1withrsa-digestalg sha1-keystore android.keystore platforms/android/app/build/outputs/apk/release/app-relea

  • 我正在学习LiquiBase。我正在尝试从changelog生成SQL。出于某种原因,它生成的唯一SQL是对表的锁定。 我期待drop、create和update表的SQL,但没有看到任何东西。 LiquiBase:3.4.1版 数据库:MS SQL Server

  • 问题内容: 我正在尝试将jOOQ包含在我的代码中,但是未生成任何代码。 执行时,不会生成任何源。我希望它创建一个在以下-file文件中定义的类。 我的pom.xml文件如下所示: 我假设应该使用适当的类来创建目录。Maven构建成功运行,没有任何错误。 您可以在此GitHub存储库中找到整个项目。 问题答案: 您正在使用内存数据库:。jOOQ代码生成器启动时,它将接收到一个空的 新 数据库,而不是

  • 我正在用Gradle编写一个构建文件来执行Java构建操作。然而,Gradle并没有为我的项目生成Javadocs。格拉德尔说。org的文档,要在Gradle中实现Javadocs任务,必须指定源和类路径。 但是,当我运行命令或时,javadocs的默认文件夹(build\docs)永远不会创建,因此不会为项目生成html文件。我能做些什么来解决这个问题?

  • 我正在尝试使用ANTLRV4为一个简单的自定义语法生成一个lexer和解析器。问题是,当我运行Antlr.jar实用程序时,它生成了一个Lexer文件,而不是一个解析器文件,我认为它应该生成。 简单语法 hellolexer.js hellolexer.tokens 所需输出 hellolexer.js helloparser.js hellolistener.js hellovisitor.js

  • 当我尝试运行“ php artisan key:generate ” 时,我在提示中收到以下错误错误屏幕截图实际上我正在不同的笔记本电脑上运行一个 laravel 项目。我在生成密钥时遇到此问题。我该如何解决?

  • 问题内容: 我正在尝试通过学习本教程来学习hyperjaxb 。我遵循了所有指示,直到标题部分。这包括以下步骤: 但是什么也没产生。没有目录,也没有。我对整个目录结构进行了关键字搜索,以确认运行后这些资源不存在。我也将目录结构导入到新的Eclipse Maven项目中,并在新的Eclipse Maven项目中进行了尝试,但同样缺少结果。 如何使本教程生成预期的生成文件? 另外,是否有更好的方法从x

  • 我似乎找不到解决这个奇怪的错误的方法: 而profile类仅由id字段组成。Identiable提供ID属性。 我将Slick 3与MySQL一起使用。 对于名称,生成配置文件的foreignKey,而对于PhoneNumbers则不生成。为什么?好像没什么区别? 更新: 在此相关声明: 和: 完整输出: 创建表(INTEGER NOT NULL AUTO_INCREMENT主键,INTEGER