Spring Could not create the java virtual machine 에러 해결

Viperse·2023년 8월 24일

오늘 spring을 설치하면서 저 오류를 총 두 개의 장치에서 봤다. 하나는 데스크탑이고, 하나는 내 노트북인데... 어쩜 두 개 다 이런가 싶어 어이없고 답답했다.

아무튼 이 글을 검색해서 들어왔다면 나와 같은 고통을 겪을 것인데, 나는 정보가 너무 없어서 시간이 오래 걸렸다 그래서 백업 겸 정보를 주고자...

해결 방법에는 여러 가지가 있다.

일단 두 가지의 분기점으로 나뉘는데

➡️ init 수정했다
➡️ init 수정 안 했다


init 수정했다

수정을 했다면 -vm에 javaw.exe 경로를 추가했을 것이다. 다운받은 Spring 자체에 문제가 있는지 확인해야 하니 추가한 경로를 지우고 STS.exe를 실행해 보자.

지웠는데도 안 된다면 밑에 수정 안 했다를 먼저 읽자.

정상적으로 실행이 된다면 파일을 종료하고 init에 다시 경로를 추가해 본 뒤,
exe를 실행하고 could not create the java virtual machine 오류 뒤에 나오는 긴 오류문을 유심히 읽어 보자.
-vm 다음에 있는 경로가 DB 관련 path로 지정되어 있을 확률이 높다.

시스템 속성 -> 고급 -> 환경 변수 -> 시스템 변수 -> path -> 편집

JAVAHOME이 아닌 다른 path가 맨위에 올라와 있다면 JAVAHOME을 맨위로 올려 줘야 한다.
init이 path를 읽지 못한 것이다. 바꿔 주고 저장하고 다시 STS.exe를 실행하면 정상적으로 돌아간다.

그러나, 이래도 안 된다고 한다면 cmd를 켜서 java -version을 확인하자.
이때 java -version이 아무것도 뜨지 않는다면 java가 여러 버전 깔려 있을 확률이 높기 때문에 제어판에 가서 사용하지 않는 버전은 삭제하고 다시 확인한다.

아마 대부분 환경 변수나 자바 버전 이슈 내에서 해결이 될 것이니 위 방법으로도 해결이 안 된다면 시스템 변수 쪽을 유심히 보길 바란다. (난 참고로 시스템 변수 쪽 JAVAHOME 경로가 jdk20으로 되어있었다... 11 쓰는데)


init 수정 안 했다

이 경우는 솔직하게 말하자면

  1. 파일 자체가 이미 상한 경우. 다운로드부터 다시 받고 압축 풀 때 경고창이 뜨면 다시 받기.
  2. 컴퓨터가 심하게 좋지 않은 경우. 그런데 spring도 안 돌아가는 컴퓨터는 거의 없을 것이다.
  3. 데이터가 버거운 경우. STS.init 파일을 실행하면 Xms256m Xmx=2048m 라고 되어 있는 부분이 있는데 Xmx 쪽을 512m 정도로 바꿔서 다시 실행해 보자.
profile
내 인생 그려 보기

0개의 댓글