build.gradle.kts 파일
plugins {
id("org.springframework.boot") version "3.2.2"
id("io.spring.dependency-management") version "1.1.4"
kotlin("jvm") version "1.8.21"
kotlin("plugin.spring") version "1.8.21"
kotlin("plugin.jpa") version "1.8.21"
kotlin("plugin.allopen") version "1.8.21"
kotlin("kapt") version "1.8.21"
idea
}
allOpen {
// Spring Boot 3.0.0
annotation("jakarta.persistence.Entity")
annotation("jakarta.persistence.MappedSuperclass")
annotation("jakarta.persistence.Embeddable")
}
dependencies {
...
// QueryDSL 설정
implementation ("com.querydsl:querydsl-jpa:5.0.0:jakarta")
kapt ("com.querydsl:querydsl-apt:5.0.0:jakarta")
kapt ("jakarta.annotation:jakarta.annotation-api")
kapt ("jakarta.persistence:jakarta.persistence-api")
...
}
idea {
module {
val kaptMain = file("build/generated/source/kapt/main")
sourceDirs.add(kaptMain)
generatedSourceDirs.add(kaptMain)
}
}
설정 후 build 시
idea 에서 지정한 build/generated/source/kapt/main 하위에 @Entity 어노테이션이 붙은 클래스 파일들이 생성되면
설정이 완료된 것입니다.