묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 핵심 원리 - 기본편
[정보글] HelloLombok 실행 시 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]질문 하려다가 제가 해결한 내용을 공유합니다.build.gradle도 다 실행이 되었는데, 제가 겪는 에러 내용은 HelloLombok을 실행할 때에 문제가 발생한다는 점입니다.오류 내용 :Cause: class lombok.javac.apt.LombokProcessor (in unnamed module @0x26eb169f) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.processing to unnamed module @0x26eb169f찾아보니 이는 JDK 16버전의 경우, Lombok과는 호환이 안된다는것이 원인이었습니다.따라서 https://icea.tistory.com/16이 링크를 참조했고, build.gradle을 이렇게 바꾸어서 해결할 수 있었습니다.해결 전 ://lombok 라이브러리 추가 시작 implementation 'org.projectlombok:lombok' annotationProcessor ("org.projectlombok:lombok") testImplementation 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' //lombok 라이브러리 추가 끝 해결 후 : //lombok 라이브러리 추가 시작 implementation 'org.projectlombok:lombok' annotationProcessor ("org.projectlombok:lombok:1.18.20") testImplementation ("org.projectlombok:lombok:1.18.20") testAnnotationProcessor ("org.projectlombok:lombok:1.18.20") //lombok 라이브러리 추가 끝HelloLombok 코드package hello.core; import lombok.Getter; import lombok.Setter; import lombok.ToString; @Getter @Setter @ToString public class HelloLombok { private String name; private int age; public static void main(String[] args) { HelloLombok helloLombok =new HelloLombok(); helloLombok.setName("qwer"); String name = helloLombok.getName(); System.out.println("name = " + name); System.out.println("helloLombok = " + helloLombok); } } 혹시라도 안되셨던 분들은 참고하시길 바랍니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
enable annotation processor에 체크가 안 되어있는데 롬복이 멀쩡히 잘 적용돼요
안녕하세요? '프로젝트 생성' 강의를 들으며 세팅하는 중에 질문이 생겨 질문 남깁니다. lombok plugin은 설치가 되어있었고 (spring boot 최신 버전은 기본적으로 세팅이 되어있다고 들었습니다) 이제 Enable annotation processing을 체크하려고 했습니다. 그래야 롬복을 사용할 수 있다고 하셨습니다. 그런데 저는 Enable annotation processing을 체크하지 않았는데도 @Getter, @Setter 등의 어노테이션이 잘 적용되어 hello.getData(), hello.setData("어쩌구");가 모두 잘 동작했습니다. Enable annotation processing을 체크하면 어떤 효과가 있는건가요? 왜 체크를 하지 않았는데도 잘 동작하는 건가요?