본문 바로가기
학습/Gradle

[gradle] gradle 5부터 lombok의 설정을 신경써야 한다

by KKambi 2020. 6. 14.

 

오류 상황

//build.gradle
dependencies {

    //Util
    implementation "org.projectlombok:lombok"
}

 

//오류 메세지
error: variable courseRepository not initialized in the default constructor

- build.gradle에 implementation으로 lombok 의존성을 추가하고, Intellij 프로젝트에서도 enable annotation processing 옵션을 활성화한 상태

- 그런데 @RequiredArgsConstructor를 선언한 Service에서 default constructor를 사용하게 됨

- 결국 생성자에 필요한 인자인 courseRepository를 주입받지 못하는 상황

 

 

이유

    dependencies {
        annotationProcessor 'org.projectlombok:lombok'
        implementation 'org.projectlombok:lombok'
        testAnnotationProcessor 'org.projectlombok:lombok'
        testImplementation 'org.projectlombok:lombok'
    }
    configurations {
        compileOnly {
            extendsFrom annotationProcessor
        }
    }

- gradle 5 이상부터 어노테이션을 구별해서 추가해야 한다.

- 다만 Querydsl을 사용하면 추가 설정이 필요하다고 한다.

'학습 > Gradle' 카테고리의 다른 글

[gradle] api와 implementation  (0) 2020.04.26
[gradle] buildscript block의 용도  (0) 2020.03.23

댓글