java.lang.IllegalStateException: endPosTable already set
가끔 저 오류를 볼 수 있는데.. 대체적으로 아마 generatesrc 로 인한 문제라고 생각한다. 즉, generatesrc가 기존에 source path로 등록되어 있는데 제대로 clean이 안된 상태에서 다시 source path를 만들어 등록하려고 해서 내뱉는 오류.
즉, 빌드 전 해당 generated source path를 지우면 된다.
clean을 이용하는 경우
clean.doLast {
file(querydslGenratedSrc).deleteDir()
}
task를 이용하는 경우
def querydslGenratedSrc = 'src/main/generated'
task deleteGeneratedSources(type: Delete) {
delete file(querydslGenratedSrc)
}
tasks.withType(JavaCompile) { it.dependsOn('deleteGeneratedSources') }
options으로 처리하는 경우
tasks.withType(JavaCompile) {
options.incremental = false
options.annotationProcessorGeneratedSourcesDirectory = file(querydslGenratedSrc)
}
이래도 안되고 저래도 안된다면... ./gradlew clean build(assemble) 이렇게 한번에 명령어를 날리지 말고 clean 후 build(또는 assemble)을 실행하자. (두번도 좋다.)