QueryDSL을 적용할 때 보통은 Lombok을 함께 사용하는데 둘다 Annotation Processor 이라서 그런저 항상 시간을 들여서 설정을 해야만 했습니다. Gradle 5.0에서 QueryDSL을 적용하는 방법이 또 달라졌습니다.
lombok, queryDSL 둘 다 모두 변경 적용 완료
Buildscript {
ext { springBootVersion = "$SPRING_BOOT_VERSION" }
repositories { mavenCentral() }
dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") }
}
plugins {
id "org.springframework.boot" version "2.1.0.RELEASE"
id 'io.spring.dependency-management' version '1.0.6.RELEASE'
}
...
...
dependencies { def querydslVersion = "4.2.1"
compile ("com.querydsl:querydsl-core:$querydslVersion") compile ("com.querydsl:querydsl-jpa:$querydslVersion") compileOnly 'org.projectlombok:lombok:1.18.4' 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" ) ... }
sourceSets { main.java.srcDirs += [ "src-gen/main/java" ] }
tasks.withType(JavaCompile) { options.annotationProcessorGeneratedSourcesDirectory = file( "src-gen/main/java" ) }
clean.doLast { file( "src-gen" ).deleteDir() }
|