오류해결

[오류해결] 환경변수 설정해도 Error: could not open ~ jvm.cfg - 자바

가누's 2021. 7. 13. 12:10

여러가지를 공부하다 보면 다양한 버전의 jre를 설치해야할 때가 생긴다.

그런데 한 곳에 설치하지 않고 서로 다른 곳에 다양한 버전의 jre를 설치하거나, 설치된 폴더를 이동시키거나 하면

어느 날 보면 java가 제대로 실행되지 않는 경우가 생긴다.

심지어, 환경변수의 PATH 값을 분명히 제대로 입력했음에도!

cmd 창에서 java -version 를 입력했을 때 원하는 값이 나오지 않고

오류 메시지 Error: could not open ~ jvm.cfg 가 뜨고있다.


이럴 땐 환경변수가 아닌 레지스트리 편집기를 열어봐야 한다!

 

윈도우 + R 을 누르고 regedit을 입력하면 레지스트리 편집기가 뜬다.
우리가 찾아야 할 곳은 HLM\SOFTWARE\JavaSofJava Runtime Environment 이다.

이 부분을 눌러서, Current Version의 데이터 값을 확인한다.

 

각자 값이 다를텐데, 나의 경우에는 1.8 이 입력되어있다.

그러면, Java Runtime Environment의 하위 폴더에서 해당 폴더를 찾는다!

 

여기서 JavaHome 값을 보면 앞서 cmd 창에 떴던 오류 메시지의 주소를 이곳에서 발견할 수 있다!!!

남은 것은 내가 지금 사용하고 싶은 jdk와 jre의 경로에 알맞게 이를 바꿔주는 것!

 

D:\things\jre1.9.0_291\lib\amd64\jvm.cfg -> C:\Program Files\Java\jdk1.8.0_221\jre

 

D:\things\jre1.9.0_291\bin\server\jvm.dll -> C:\Program Files\Java\jre1.8.0_221\bin\server\jvm.dll

내가 바꾼 값을 보면 jvm.cfg 까지는 레지스트리에 넣지 않았는데, 이유는 다 넣었더니 위의 오류가 났기 때문이다.

오류 메시지를 바탕으로 jvm.cfg를 찾을 수 있도록 경로를 수정하였고

마침내 java version이 정상적으로 출력되었다!