JVM/Java

[Error] Springboot Gradle Task :compile.Java Error (자바 경로를 찾지 못하는 현상)

헹창 2019. 11. 4.
반응형

[Error] Springboot  Gradle Task :compile.Java Error (자바 경로를 찾지 못하는 현상)

 

 

분명 실행은 잘 됐는데 Gradle 빌드에서 에러가 나는 순간 언제나 한숨.. 컴파일 에러가 나면 원인 찾기가 왜이렇게 어려운건지.. 

 

이 에러를 잡기 위해 많은 시도를 해봤기 때문에 모든 자료를 남기려한다.

 

 

1. 에러 로그

 

Execution failed for task ':compileJava'. 
> Could not find tools.jar. Please check that C:\java contains a valid JDK installation.

 

 

- Gradle Executions

 

 

 

- Console에 찍힌 Error Log

 

 

 

2. 원인

 

- 원인 : 이클립스 Java 경로 설정 문제

 

 

나의 java 1.8 버전의 jdk 경로는 C:\Program Files\Java 이다. 그런데 위의 에러 로그를 보면 자꾸 C:\java 경로를 바라본다.

 

 

왜????? 대체 왜??????? 

 

 

 

 

환경변수의 JAVA_HOME에 설정한 경로도 분명 C:\java가 아닌 Program Files\Java에 있단 말이다...

 

 

심지어 아래 시도해본 경우들을 보면 알다시피, 어디선가 경로 설정의 문제가 있을까 싶어 모든 경로 설정을 Program Files로 변경하고 확인했다..

 

 

 

그래도 에러가 잡히지 않아 사수님께 여쭈어보았다.. (쭈뼛)

 

 

 

이게 당연히 JAVA HOME의 경로를 물어야 하는게 맞는데, 가끔 그렇지 않은 경우가 있다고 한다. 그 원인이 될 수 있는 경우는 레지스터의 문제일 수 있다고..

 

 

여러 버전의 자바를 깔면서 레지스터가 중복되거나 하는 경우가 있다고....

 

 

(사실 이전에 1.8버전을 쓰다가 1.7버전으로 다운그레이드 한적이 있었는데 그때 뭔가 문제가 있었던게 아닐까 생각했다)

 

 

 

3. 해결방법

 

 

# 이클립스가 JAVA HOME의 java 경로를 물지 못하고 있기 때문에 VM으로 설정을 해줄 것이다.

 

 

- java 1.8 버전의 javaw.exe 파일의 경로를 복사한다.  

 

C:\Program Files\Java\jdk1.8.0_171\jre\bin

 

 

 

 

- eclipse 폴더 내의 eclipse.ini 폴더를 편집으로 열어 아래와 같이 "-vm" 과 javaw.exe 경로를 넣어준다

 

-vm
C:\Program Files\Java\jdk1.8.0_171\jre\bin

 

 

 

 

.

.

.

.

.

 

 

 

 

4. 해결하기 전 시도들

 

C:\java 경로 폴더를 가면 JDK 폴더가 없다...

 

 

일단 JAVA의 버전과 경로를 확인해봐야겠다.

 

 

JAVA 버전 1.8.0_171이 C:java가 아닌 C:Program Files:Java 에 jdk 폴더가 있다

 

 

 

 

1) 첫번째 시도

 

이 에러는 JDK와 JRE가 설치되어 있는 환경에서 프로젝트의 JRE가 PC에 설치된  JRE 폴더의 VM을 참조해서 발생하는 문제라고 한다.

 

 

PC에 설치된 JDK폴더 내부의 JRE의 VM을 참조하도록 설정을 변경해줘야 한다.

 

 

 

 

 

 

 

 

이걸 해도 같은 에러가난다.

 

 

 

 

2) 두번 째 시도

 

프로젝트 우클릭 Java Build Path에서  JRE System Library Edit을 누른 뒤 Alternate JRE: 체크, Installed JREs를 눌러 위에서 추가한 jre(default)를 Apply and Close 해준다.

 

 

 

apply해줘도 안된다..

 

 

 

 

3) 세번 째 시도

 

 

혹시 환경변수가 C:java인지도 확인했는데 아니다.. jdk 경로에 잘 되어있다.

 

 

 

4) 네 번째 시도

 

 

새로운 방법으로 Gradle Tasks 에서 프로젝트 Open Gradle Run Configuration 의 JAVA HOME을 설정해주었다

 

 

 

 

 

그래도 안되네? 같은 에러가 반복되고 있음

 

 

 

C:Java에 Jdk 폴더를 넣어놔도 안됨.

 

 

어디선가 C:Java 경로에 대한 설정이 되어있는 것 같음..

 

 

.

.

.

.

 

 

 

 

JAVA_HOME도 프로젝트 내에서 설정한 모든 경로도 잘 되어있는데 다른 경로에서의 에러 로그가 나온다면

 

eclipse.ini 편집기를 열어 -vm 경로를 설정해보자

 

 

 

 

 

 

 

 

 

Gradle 프로젝트 build 후 jar파일 생성 및 배포방법 알아보기

 

[Spring Boot] 프로젝트 jar파일 생성 방법과 실행 방법, 배치파일까지 !

[Spring Boot] 프로젝트 jar파일 생성 방법과 실행 방법, 배치파일까지 ! 오늘은 Spring Framework을 사용하는 프로젝트를 간편하게 셋업할 수 있는 서브 프로젝트 Spring Boot의 jar파일 생성방법과 실행방법, 그..

haenny.tistory.com

 

728x90
반응형

댓글

추천 글