Getter cannot be resolved to a type
어노테이션 그냥되는줄 알았더니..아니다..... 처음 설치할때 lombok Dependency 설정을 했는데.....에러가 난다.
검색하니....lombok은 이클립스에선 따로 설치해야한다고 한다..
https://projectlombok.org/download
Download
projectlombok.org
현재 버전은 1.18.26 인데..경험상 최신은 오히려 독임...
무서워서 1.18.10 버전정도에 다운을 시도함..
다운받고 설치하면 자동으로 설치화면이 나온다고 하는데.......
참고는 이분껄했다.
lombok @Data not working / getter setter 인식 불가 해결
언젠가 돌아오는 환경설정의 시간. 이번에도 환경설정하다가 시간을 많이 날린 관계로 미래의 나와 누군가를 위해 포스팅한다. 이번에 세팅하는 환경에서는 annotation을 통해 기능을 구현한 부분
ojava.tistory.com
그런데 나는 안나오는것이다...역시 구글...검색하니 나같은 케이스가 종종있다..
중요한건 이 jar파일 실행을 jdk가 있는곳에 가서 실행해야한다...
C:\shin_down\jdk11.0.17_8\bin>java -jar {C:\의 다운로드 경로}\Downloads\lombok-1.18.10.jar
실행하니 화면이 나온다...
아무 메세지 안떠서 그냥 엔터하니 종료되고 이클립스 재실행.,
시킨대로 eclipse.ini 갔더니...-vmargs에 문구없어서
-xbootclasspath/a:lombok.jar추가.
(-javaagent:lombok.jar)은 있었음.......재실행 ..동일 에러
An error has occurred. See error log for more details.
Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @30d5e37c
에러를 검색하니 빌드 문제라고 한다......안되네...다시검색..
어떤분이
--illegal-access=warn
--add-opens java.base/java.lang=ALL-UNNAMED
두줄 더 넣으라고 하셨는데....안먹힌다...
어느분은 jdk충돌일수 있다고 안쓰는 jdk삭제하라고 하셨음...나도 17과 11이 ecilipse.ini에 같이 있어서 안쓰는 17버전 삭제...
-Dosgi.requiredJavaVersion=17
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-Dsun.java.command=Eclipse
-XX:+UseG1GC
-XX:+UseStringDeduplication
--add-modules=ALL-SYSTEM /////삭제함. 재실행...안먹힘..
다시검색하니. install new software에서 다운 가능하고 설치하니 된다고 하심...
Help-Install New Software 로가서 먼저 Work with입력창에
https://projectlombok.org/p2 입력 후 add한 다음 name에 lomgok을 입력하니....화면이 저렇게 나왔다
입력창에 무턱대고 모두 넣었을 때는 조회 안되었으니깐 참고하시길.....
녹색칸이 한참....걸리는줄 알았는데 뭐 몇분 소요.....
동의하고 종료되면 빌드 기다림..기다리면서 생각났는데 이번껀 최신버전이다.....좀 무섭다..
뭐 창 뜨는데 별수 있나 선택 하니 넘어간다. 완료되니 restart now 창 떠서 선택
-javaagent:C:\shin_down\eclipse\plugins\org.projectlombok.agent_1.18.26/lombok.jar
여기서 버전이 자동 변경되어 있었다.
그런데 오류는 바뀌지 않음......
build.gradle에 dependencies 에 추가를 안했다...
implementation 'org.projectLombok:lombok:1.18.26' 추가...
하지만 이메 빌드에서 에러가 발생되어서 아무것도 읽지 않는다.......
여기까지가 오전 4시간정도 씨름했던 부분인데......
여기서 다시 진행하면서 이클립스까지 안먹히기 시작했다
계속 검색하면서 warkspace의 .matadata손상이란 글들이 있었다.
산으로가는 에러를 보면서 가능성을 느끼면 워크스페이스를 다른 이름으로 진행해서 이클립스를 실행해봤으나 계속 이상발생... 결국은 이클립스 재설치...
build.gradle에
implementation 'org.projectlombok:lombok:1.18.10'
annotationProcessor 'org.projectlombok:lombok:1.18.10'
넣었더니 깔린다.......수동으로 한 짓들은 뻘짓이였던 것인가........
Field mDto in com.boot.jeong.service.impl.MemberServiceImpl required a bean of type 'com.boot.jeong.dto.MemberDto' that could not be found.
어노테이션이 정상으로 돌아와서 실행했더니 저런 에러가 뜬다....
내가 만든 스프링 패키지의 어노테이션중 @Autowired 가 문제가 되고 있다....그리고 entity 클래스도 일단은 문제다....
결국은 lombok이 문제가 아니라 스프링부트 프로젝트를 잘못만들어서 에러가 나오던것이였다...ㅠㅠ
정리하면 lombok은 Dependencies설정할때 잘했던가...아니면 gredle에 잘 써서...버전까지 ...빌드하면 자동으로 설치한다..부트니깐......근데 저런 에러가 나온다면 그건 스프링의 문제인것이다...내가 만든 클래스에서 구성 문제가 생긴거 일수 있이니 참고해서 진행해야 한다...일단 종료!! 여기까지가 오후 4시간 헛질한 오늘의 결론이다...
'에러들' 카테고리의 다른 글
이클립스 스프링부트 혼자하기6/ jsp + mapping(Delete, pathVariable) (0) | 2023.03.07 |
---|---|
이클립스 스프링부트 혼자하기5-swagger (0) | 2023.03.06 |
이클립스 스프링부트 혼자하기3-Whitelabel Error Page 와의 싸움 (0) | 2023.03.03 |
이클립스 스프링부트 혼자하기 2- 재설치...mysql과의 씨름 (0) | 2023.03.03 |
이클립스 스프링부트 혼자해보기--jsp 파일 실행 실패 이력 (1) | 2023.03.03 |