반응형
STS 4.12.1이 나와서 사용하려고 보니 프로젝트 빌드 시 java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module... 와 같은 오류가 발생한다.
해당 에러는 lombok을 사용하는 경우 발생하며 발생하는 이유는 JDK 16에서 강화된 보안정책 때문에 private 접근자에 대한 강제 접근 처리가 되지 않으면서 해당 방식의 코드를 사용한 lombok을 사용할 경우 발생되는 오류이다.
https://openjdk.java.net/jeps/396
https://github.com/projectlombok/lombok/issues/2810
현재 lombok의 최신 버전은 1.18.22이며 이 버전까지는 해당 오류를 막기 위해서는 ini 파일에 다음과 같은 설정을 추가해야 한다.
--illegal-access=warn
--add-opens java.base/java.lang=ALL-UNNAMED
lombok 다음 버전에서 관련 코드가 변경되면 추가한 두 줄은 삭제해도 될 것으로 보인다.
반응형
'Study > Java' 카테고리의 다른 글
java project에서 maven으로 asciidoctor-diagram 사용해보기 (0) | 2022.02.19 |
---|---|
java에서 OpenCV 사용해보기 (0) | 2022.02.04 |
Java SE와 Java EE, Jakrta EE history (2) | 2022.01.25 |
JDK LTS release 2년 주기 전환 및 Spring의 release 정책 (0) | 2022.01.12 |
Spring Boot 2.6 Release Notes (0) | 2021.11.23 |
[troubleshooting] eclipse(STS)에서 sources and javadoc downdoad 무한 반복 현상 (0) | 2021.10.22 |
JDK 12 ~ JDK 17 사이 추가된 language specification feature (0) | 2021.09.15 |
JDK 17 New Features (0) | 2021.09.15 |
Spring Boot에서 Resilience4j 사용해보기 (0) | 2021.09.09 |
Java lambda expression(람다 표현식)을 사용한 지연 연산(Lazy Evaluation) (0) | 2021.08.27 |