이클립스에서 java파일을 빌드하여 class 파일로 만드려고 빌드를 하는데, 아무리 해도 클래스 파일이 1.7버전이 나오질 않았다. 그래서, 컴파일 버전을 다운그레이드를 하려고 했는데 1.7 버전은 보이질 않았다. 이번 글은 이클립스(Eclipse) JDK Compiler compliance level 1.7 보이지 않을 때 문제 해결 방법(JDK 1.7 not showing)에 대해 기록한다.
문제
로컬에서 개발한 파일들을 개발 서버에 배포하려고 할 때 수동 배포를 사용한다. 기존에 war 배포를 하면 에러가 항상 발생하고, 수정하는 파일 개수도 몇 개 없어서 수동 배포가 더 빨라서 java 파일은 빌드하여 class파일을 붙여 넣으면 됐었다. 그래서, 컴파일을 할 때 JDK 1.7로 컴파일을 해야 하므로, 아래와 같이 Compiler JDK 버전을 1.7로 변경하려고 했는데 1.7이 없었다.
솔직히 내가 알고 있는 지식들 다 했는데도 결국 간단한 방법으로 해결이 됐다.
이제부터 삽질 시작한다.
문제 해결을 위한 과정들
1. 이클립스 내에서 JDK 버전 변경을 한다.
2. [고급 시스템 설정]에서 시스템 변수의 자바 Path를 잡아 준다.
1) 시작에서 고급 시스템 설정을 검색해서 들어간다.
2) [시스템 속성]에서 [고급]으로 들어가 아래에 [환경변수]를 클릭하고, 시스템 변수에 [새로 만들기] 버튼을 누른다.
3) [새 시스템 변수]에서 아래의 내용을 기입한다.
- 변수 이름 : JAVA_HOME
- 변수 값 : jdk 설치 경로
4) 시스템 변수 탭에서 Path 변수의 편집을 눌러 아래의 상단에 %JAVA_HOME%\bin을 입력 후 확인을 누르고 적용을 한다.
이렇게 했는데도 안됐다.
그러면 이클립스 초기 JDK 설정에 영향이 있는건가?! 생각을 했다
3. eclipse.ini에서 -VM에 JDK 경로 설정을 한다.
eclipse 설치 경로에 eclipse.ini가 있는데, 여기서 -vm 밑에 jdk 경로의 javaw.exe를 설정해 줬다.
이렇게 했는데도 나오지도 않고, 1.7로 컴파일이 되지도 않았다.
5. 이클립스 프로젝트에서 아래의 경로에 .launches를 삭제하고, 이클립스를 재실행한다.
- 경로 : 프로젝트 경로 > .metadata > .plugins > org.eclipse.debug.core > .launches
삭제를 하고 재실행을 했는데도 해결되진 않았다.
6. 다른 IDE에서 JDK 변경을 해도 되진 않았다.
- 인텔리제이 : 이클립스와의 호환 문제로 에러 발생
- sts : sts를 해도 Compliance Level에 1.7은 나오질 않았다.
마지막 최후의 방법으로 아래와 같이 진행했다.
진짜 문제 해결 방법
1. 이 문제를 빠르게 해결하는 방법은 위의 시도를 해봤는데 IDE 버전을 낮추는 문제였다.
- 기존에 이클립스 IDE 2024-09 버전을 사용하고 있었는데, 2022-12 버전을 사용하니 바로 Compiler compliance level에 1.7이 보였다.
결국엔 이클립스 IDE도 최소 JDK를 탄다고는 하는데, 2022-12 버전이 1.7을 지원하나 보다.
최근댓글