gpt4 book ai didi

java - 升级到 Gradle 5 后的 Querydsl 注释处理器问题

转载 作者:行者123 更新时间:2023-12-04 17:14:44 27 4
gpt4 key购买 nike

我有一个 gradle 脚本,它从 Mongo 注释的实体生成 querydsl 类。到目前为止它一直在工作,但是在升级到 Gradle 5 后,我遇到了一个问题:

* What went wrong:
Execution failed for task ':myproject-common:compileQuerydsl'.
Annotation processor 'org.springframework.data.mongodb.repository.support.MongoAnnotationProcessor' not found

请在下面找到我的 gradle.build 脚本。任何想法可能是错误的?我读到 Gradle 5 中有变化,编译期间默认不使用注释处理器,应该添加 annotationProcessor 声明,但是当我将它添加到依赖项时,会发生同样的错误。
plugins {
id 'org.springframework.boot' version '2.0.4.RELEASE'
id "com.ewerk.gradle.plugins.querydsl" version "1.0.10"
}
repositories {
mavenCentral()
}
apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
jar {
enabled = true
baseName = 'myproject-common'
version = '0.0.1-SNAPSHOT'
}
// do no package commons into fat jar
bootJar {
enabled = false
}
querydsl {
library = 'com.querydsl:querydsl-apt:4.1.4'
querydslSourcesDir = 'src/main/querydsl'
springDataMongo = true
}
sourceCompatibility = 11.0
targetCompatibility = 11.0
sourceSets {
main {
java {
srcDirs = ['src/main/java', 'src/main/querydsl']
}
}
}
dependencies {
compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.data:spring-data-mongodb")
compile("org.springframework.boot:spring-boot-starter-data-rest")
compile("org.springframework.boot:spring-boot-starter-security")
compile("com.fasterxml.jackson.datatype:jackson-datatype- jsr310:2.8.6")
compile("com.google.guava:guava:23.0")
compile("commons-io:commons-io:2.5")
compile("org.aspectj:aspectjweaver:1.8.9")
compile("org.apache.commons:commons-lang3:3.5")
compile("commons-collections:commons-collections:3.2.2")
compile("org.javamoney:moneta:1.1")
compile("com.fizzed:rocker-runtime:1.2.0")
compile("com.querydsl:querydsl-core:4.1.4")
compile("com.querydsl:querydsl-mongodb:4.1.4")
compile("com.querydsl:querydsl-apt:4.1.4")
compile("com.codepoetics:protonpack:1.15")

testCompile("org.springframework.boot:spring-boot-starter-test")
testCompile("org.assertj:assertj-core:3.7.0")
}

最佳答案

我终于找到了解决方法。 Querydsl 缺乏与 Gradle 5 的兼容性在这里报告为一个错误:https://github.com/ewerk/gradle-plugins/issues/108

解决方法是添加到 gradle 脚本:

compileQuerydsl {
options.annotationProcessorPath = configurations.querydsl
}

关于java - 升级到 Gradle 5 后的 Querydsl 注释处理器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53913274/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com