문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 다음 판 양쪽 다음 판 | ||
gradle:jpa_metamodel_generation [2018/02/12 15:54] kwon37xi [Gradle에서 JPA 2 MetaModel 생성] |
gradle:jpa_metamodel_generation [2018/12/06 17:22] kwon37xi |
||
---|---|---|---|
줄 4: | 줄 4: | ||
* '' | * '' | ||
* **Java 6** 이상에서만 작동한다. | * **Java 6** 이상에서만 작동한다. | ||
+ | |||
+ | * TODO [[http:// | ||
===== QueryDSL ===== | ===== QueryDSL ===== | ||
* [[java: | * [[java: | ||
+ | <code groovy> | ||
+ | apply plugin: " | ||
+ | |||
+ | compile " | ||
+ | |||
+ | |||
+ | ext { | ||
+ | querydslSrcDir = ' | ||
+ | } | ||
+ | |||
+ | |||
+ | querydsl { | ||
+ | library = " | ||
+ | jpa = true | ||
+ | querydslSourcesDir = querydslSrcDir | ||
+ | } | ||
+ | |||
+ | sourceSets { | ||
+ | main { | ||
+ | java { | ||
+ | srcDirs += file(querydslSrcDir) | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | idea { | ||
+ | module { | ||
+ | generatedSourceDirs += file(querydslSrcDir) | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | * '' | ||
+ | gradlew clean cleanQuerydslSourcesDir compileQueryDsl | ||
+ | |||
+ | # cleanQuerydslSourcesDir 를 하지 않을 경우 기존 생성된 코드 때문에 오류가 발생함. | ||
+ | </ | ||
===== Cannot find symbol 오류 ===== | ===== Cannot find symbol 오류 ===== | ||
* [[java: | * [[java: | ||
줄 44: | 줄 83: | ||
srcDir jpaMetamodelGeneratedDir | srcDir jpaMetamodelGeneratedDir | ||
} | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | idea { | ||
+ | module { | ||
+ | sourceDirs += file(jpaMetamodelGeneratedDir) | ||
} | } | ||
} | } | ||
줄 79: | 줄 124: | ||
// 필요하면 compileJava가 generateJpaMetamodel 에 의존하도록 변경한다. | // 필요하면 compileJava가 generateJpaMetamodel 에 의존하도록 변경한다. | ||
</ | </ | ||
+ | |||
+ | ==== Lombok 사용시 ==== | ||
+ | [[java: | ||
+ | |||
+ | < | ||
+ | task generateQueryDSL(type: | ||
+ | source = sourceSets.main.java | ||
+ | classpath = configurations.compile | ||
+ | destinationDir = queryDslOutput | ||
+ | options.compilerArgs = [ | ||
+ | " | ||
+ | / | ||
+ | " | ||
+ | ] | ||
+ | } | ||
+ | compileJava.dependsOn(generateQueryDSL) | ||
+ | </ | ||
+ | |||