작성
·
425
0
롬복 기능 추가할 때 build.gradle의 dependencies에
implementation 'org.projectlombok:lombok'
이 한 줄만 넣어줘도 롬복이 기능하는데 문제가 없는데 강의에서는 아래와 같이 여러 줄의 코드를 추가해줬습니다. 단순히 implementation만 추가해주는것과 강의에서 제시한 아래의 코드가 서로 어떻게 다른 건지 알 수 있을까요?
//lombok 라이브러리 추가 시작
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok'
//lombok 라이브러리 추가 끝
참고로 스프링부트 버전은 3.2.1 입니다.
답변 1
1
안녕하세요. Jaesang Yoon님, 공식 서포터즈 OMG입니다.
아래의 테스트 관련 내용을 추가하지 않을 경우 test환경(테스트 코드 내)에서 롬복 사용이 불가능합니다 😀
테스트에서 롬복이 되는지 확인해보시면 될 것 같습니다^^
testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok'
그리고
annotationProcessor 'org.projectlombok:lombok'
해당 구문은 Lombok 어노테이션들이 적용된 코드를 컴파일러가 실제 구현 코드로 변환하도록 처리하는데요,
저 어노테이션이 없어도 동작한다고 하여
implementation 'org.projectlombok:lombok'
만 추가 후 확인해보았는데, 저의 경우 아래와 같이 롬복 어노테이션 자체는 Import가 되었으나, 실제 코드 실행은 불가능하였습니다.
annotation processor 제거
애플리케이션 실행까지 해본 것이 맞을까요?
추가로 build.gradle 내용을 댓글로 내용을 복사해서 공유해주시면 제 개발환경에서 테스트 해보고 결과를 알려드릴 수 있을 것 같아요.
실행 여부도 확인 부탁드립니다 😀
감사합니다.