사내에서 개발한 프로젝트 관리툴에 Gradle 빌드가 추가가 되어 기존에 로컬머신에서 Jenkins를 이용해서 빌드하던 프로젝트를 이관해서 빌드하려는데 계속 이슈가 발생하여 정리 겸 글을 쓴다.
로컬머신에서 빌드하는 경우 정상적으로 빌드가 되나, 사내 관리툴을 통해 빌드할 경우 여러 곳에서 lombok 어노테이션 사용부분에서 error: cannot find symbol 가 발생하면서 빌드 실패가 나는 이슈
먼저 로컬머신은 gradle 4.10.2버전을 사용중이었고 사내관리툴은 5.3.1버전이 설치되어 있었다.
정확한 이유는 알 수 없었지만, 5.x대 버전에서는 어노테이션에 대한 전처리기를 명시적으로 세팅해줘야 정상적으로 빌드가 되었다.
build.gradle의 디펜던시 설정 부분에 complieOnly와 annotationProcessor로 Lombok을 추가해준다.
dependencies {
compileOnly("org.projectlombok:lombok:${lombokVersion}")
annotationProcessor("org.projectlombok:lombok:${lombokVersion}")
...
}