Java 기반 프로그램이나 게임은 Java가 제대로 설치되어 있다면 매우 안정적으로 작동합니다. 하지만 최근 일부 사용자들이 Minecraft 같은 Java 프로그램을 실행하려고 할 때 'Java 가상 머신을 생성할 수 없습니다(Could not create the Java Virtual Machine)' 오류가 발생한다고 보고하고 있습니다. 이는 Java 프로그램이 작동하기 위해 사용하는 가상 머신이 올바르게 설치되지 않았다는 의미입니다. 동일한 문제로 어려움을 겪고 계시다면 잘 찾아오셨습니다. 이 오류를 해결할 수 있는 완벽한 가이드를 소개해 드립니다.

Windows 10에서 Java 가상 머신 생성 오류를 해결하는 방법
'Java 가상 머신을 생성할 수 없습니다' 오류는 주로 통합 개발 환경(IDE)에서 코드를 컴파일할 때 자주 나타납니다. 이 오류는 보통 다음과 같은 원인으로 발생합니다.
- Java를 실행할 때 잘못된 인수 또는 옵션 사용: 직접 만든 앱이나 오픈소스 애플리케이션을 실행할 때 이 오류가 나타날 수 있으며, 시스템 불안정을 유발할 수도 있습니다.
- Java 최대 힙(Heap) 메모리 부족: 시스템 변수에 설정된 값보다 더 큰 최대 힙 크기를 요구하는 앱을 실행하면 이 오류가 발생할 수 있습니다.
- 관리자 권한 없이 Java 실행 파일 또는 프로그램 실행: 정상적인 작동을 위해 관리자 권한이 필요한 앱을 실행할 때 이 오류가 발생할 수 있습니다.
이제 오류의 원인을 이해했으니, 비슷한 오류인 'Java 가상 머신 런처 오류' 역시 대부분 Java 설치 문제로 발생한다는 점도 참고하시기 바랍니다. 그럼 본격적으로 오류를 해결하는 방법을 알아보겠습니다.
사전 점검 사항
- 시작 인수 확인: 지정한 시작 매개변수를 점검하세요. Java 버전이 올바르더라도 시작 설정에 따라 컴파일에 사용되는 버전이 달라질 수 있습니다. Java를 제자리에서 업데이트했다면 시작 매개변수가 여전히 이전 버전을 참조하고 있을 가능성이 높습니다.
- 문법 확인: 인수의 문법이 올바른지 확인하세요. 사소한 실수 하나만으로도 이 오류가 발생할 수 있습니다. 하이픈(-)이 중복되거나 버전이 잘못 입력되지 않았는지 살펴보세요.
- JDK 손상 여부 확인: 손상된 JDK(Java Development Kit)는 이 오류의 원인이 될 수 있습니다. 아래 단계를 따라 손상 여부를 확인해 보세요.
1. Windows 키를 누르고 명령 프롬프트(Command Prompt)를 입력한 뒤 관리자 권한으로 실행을 클릭합니다.

2. c:\> java -version을 입력하고 Enter 키를 누릅니다.

3. 명령 실행 시 오류가 발생하면 JDK를 다시 설치하세요. 재설치 후에도 문제가 해결되지 않으면 이 글에서 소개하는 해결 방법들을 시도해 보세요.
방법 1: 관리자 모드로 Java 실행하기
필요한 관리자 권한이 없는 앱은 Windows PC에서 불안정하게 작동할 수 있으며, 'Java 가상 머신을 생성할 수 없습니다' 오류를 포함한 여러 문제를 일으킬 수 있습니다. 이 경우 기본 Java 실행 파일(java.exe)이 항상 관리자 권한으로 실행되도록 설정하면 해결할 수 있습니다. 아래 단계를 따라 해 보세요.
1. Windows + E 키를 눌러 파일 탐색기를 엽니다.
2. 파일 탐색기에서 Java.exe 파일로 이동합니다. 일반적으로 다음 경로에 있습니다.
C:\Program Files\Java\*JRE 빌드 버전*\bin
JRE 빌드 버전은 설치된 버전에 따라 다릅니다.
또는
C:\Program Files(x86)\Common Files\Oracle\Java\javapath
참고: Java를 다른 위치에 설치했다면 해당 경로로 이동하여 Java.exe를 찾으세요.

3. Java.exe 파일을 마우스 오른쪽 버튼으로 클릭하고 속성(Properties)을 선택하여 속성 창을 엽니다.

4. 호환성(Compatibility) 탭으로 이동한 후, 그림과 같이 관리자 권한으로 이 프로그램 실행(Run this program as an administrator) 체크박스에 체크합니다.

5. 적용(Apply) 및 확인(OK)을 클릭하여 변경 사항을 저장합니다.

이제 Java를 실행할 때마다 항상 관리자 권한으로 작동합니다.
방법 2: Java 힙 크기 늘리기
Java가 가상 머신 클라이언트를 여는 데 필요한 시스템 메모리가 부족할 때도 이 오류가 발생할 수 있습니다. Java는 기본적으로 최대 힙 크기를 사용하도록 구성되어 있으며, 힙 크기 한도를 초과하는 앱을 실행하면 오류가 발생합니다. 새 시스템 변수를 만들어 사용 가능한 메모리를 늘리면 이 문제를 해결할 수 있습니다. 아래 단계를 따라 해 보세요.
1. Windows + R 키를 함께 눌러 실행(Run) 대화 상자를 엽니다.
2. sysdm.cpl을 입력하고 Enter 키를 눌러 시스템 속성(System Properties)을 엽니다.

3. 고급(Advanced) 탭으로 이동합니다.

4. 그림과 같이 환경 변수(Environment Variables...) 버튼을 클릭합니다.

5. 환경 변수 창에서 시스템 변수(System Variables) 영역의 새로 만들기(New...) 버튼을 클릭합니다.

6. 새 시스템 변수 팝업에서 변수 이름을 _JAVA_OPTIONS로, 변수 값을 -Xmx512M으로 설정한 후 확인을 클릭하여 저장합니다.
참고: 오류가 계속된다면 6단계에서와 같이 변수 값을 -Xmx512M 대신 -Xmx1024M으로 설정하여 메모리를 더 늘려 보세요.

방법 3: Java 코드 수정하기
일부 사용자들은 코드에서 간단한 변경만으로 이 오류를 해결할 수 있었다고 보고했습니다. 몇 가지 예시를 소개합니다.
1. 코드에서 이중 하이픈(--)을 단일 하이픈(-)으로 교체하면 문제가 해결될 수 있습니다.
- 이중 하이픈이 사용된 코드
sony@sony-VPCEH25EN:~$ java –version Picked up JAVA_TOOL_OPTIONS: –javaagent:/usr/share/java/jayatanaag.jar Unrecognized option: –version
- 동일한 코드를 단일 하이픈으로 수정한 경우
sony@sony-VPCEH25EN:~$ java -version Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar Unrecognized option: -version
2. 또한 인수에서 특정 구문을 제거하는 것도 고려해 보세요.
-Djava.endorsed.dirs="C:\Program Files\Apache Software Foundation\Tomcat 8.5\endorsed"
3. eclipse.ini 파일에서 -vm 항목이 vm args 위에 추가되어 있는지 확인하세요. 그렇지 않으면 env wars에서 JVM V6가 선택될 수 있습니다.
참고: Ubuntu를 사용 중이라면 Java 8만 지원한다는 점을 알아두세요. 따라서 Java를 제거한 후 이전 버전을 대신 설치해야 할 수 있습니다.
방법 4: Eclipse.ini 파일 수정하기
Eclipse IDE를 사용 중이라면 eclipse.ini 파일을 일부 수정함으로써 'Java 가상 머신을 생성할 수 없습니다' 오류 코드를 해결할 수 있습니다.
참고: eclipse.ini 파일은 Eclipse가 설치된 디렉터리 내부의 Eclipse 폴더 안에 있습니다.
1단계: 메모리 사용량 줄이기
1. Eclipse.ini 파일을 마우스 오른쪽 버튼으로 클릭하고 연결 프로그램 > 메모장을 선택합니다.
2. -Xmx256m과 일치하는 줄을 찾습니다.
참고: -Xmx1024m 또는 -Xmx512m일 수도 있습니다.
3. 기본값을 PC RAM과 더 잘 호환되는 값으로 변경하고 버전 번호를 추가합니다.
예를 들어,
-Xmx512m -Dosgi.requiredJavaVersion=1.6
또는
-Xmx512m -Dosgi.requiredJavaVersion=1.7
또는
-Xmx512m -Dosgi.requiredJavaVersion=1.8
4. -launcher.XXMaxPermSize 줄에서 256m 값을 삭제해 보세요.
2단계: 추가 수정 사항
1. 가능하다면 파일에서 다음 줄을 제거합니다.
-vm P:\Programs\jdk1.6\bin
2. 다음 줄을 아래 코드로 교체합니다.
set -Dosgi.requiredJavaVersion=1.5
변경 후:
set -Dosgi.requiredJavaVersion=1.6.
3. -marks! 줄 위에 다음 줄을 추가해 보세요.
-vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
4. 다음 줄을 통해 JVM.dll을 참조합니다.
-vm C:\Program Files\Java\jre7\bin\client\jvm.dll
5. eclipse.ini 파일에서 -vmargs를 javaw.exe 경로로 교체합니다.
-startup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813 -product com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256M -showsplash com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile **-vm "c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe"** -Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx768m -Declipse.buildId=v21.1.0-569685
6. 다음 줄을 eclipse.ini 파일 맨 끝에 추가하고 작동하는지 확인합니다.
-vmargs -Xms40m -Xmx512m -XX:MaxPermSize=256m
7. eclipse.ini에서 다음 줄들을 삭제하고 문제가 해결되는지 확인합니다.
-XX:+UseStringDeduplication -XX:+UseG1GC
참고: 문제가 계속된다면 eclipse.ini 파일을 삭제해 보세요. 단, 반드시 미리 백업본을 만들어 두어야 합니다. 또한 Java를 실행하기 전에 메모리를 많이 사용하는 모든 앱을 종료하세요.
방법 5: Java 재설치하기
어떤 경우에는 Java가 올바르게 설치되지 않았거나 시간이 지나면서 설치 파일이 손상되어 문제가 발생하기도 합니다. 따라서 이 단계에서는 Java를 완전히 제거한 후 다시 설치하겠습니다.
1. Windows + R 키를 함께 눌러 실행(Run) 대화 상자를 엽니다.

2. Appwiz.cpl을 입력하고 확인을 클릭하여 프로그램 및 기능(Programs and Features)을 실행합니다.

3. 설치된 애플리케이션 목록을 스크롤하여 Java를 찾습니다.
4. 마우스 오른쪽 버튼으로 클릭하고 제거(Uninstall)를 선택하여 Java를 삭제합니다.

참고: 다른 Java Development Kit과 업데이트도 함께 제거하는 것이 좋습니다.
5. 제거 과정이 완료될 때까지 기다린 후 PC를 재부팅합니다.
6. Java 다운로드 페이지로 이동하여 최신 버전의 JRE(Java Runtime Environment)를 다운로드합니다.
참고 1: JRE를 재설치해도 문제가 해결되지 않는다면 최신 버전의 JDK를 다운로드해 보세요.
참고 2: 이미 JDK가 설치되어 있다면 다른 버전을 사용해 보거나 JDK에 포함된 JRE를 삭제해 보세요.

자주 묻는 질문(FAQ)
Q1. 'Java 가상 머신을 생성할 수 없습니다'라는 메시지는 무엇을 의미하나요?
답변: -Xmx 옵션은 JVM(Java Virtual Machine)이 최대 힙 메모리 크기를 지정하는 데 사용됩니다. eclipse.ini 파일의 -Xmx 옵션이 현재 환경에 비해 너무 높게 설정되어 있어 이 오류 메시지가 나타나는 것입니다.
Q2. Java 가상 머신이란 무엇인가요?
답변: JVM(Java Virtual Machine)은 컴퓨터가 Java 프로그램과 Java 바이트코드로 변환된 다른 언어들을 실행할 수 있게 해주는 프로그램입니다. JVM은 JVM 구현 요구 사항을 공식적으로 정의하는 표준에 의해 규정됩니다.
Q3. Java를 무료로 받을 수 있나요?
답변: Java를 설치하려면 먼저 Oracle 설치 프로그램을 다운로드해야 합니다. 드롭다운 메뉴에서 'Free Java Download'를 선택한 후, 최종 사용자 라이선스 계약을 읽고 동의하면 됩니다.

추천 콘텐츠:
- 베스트 대량 WhatsApp 마케팅 소프트웨어 26선
- 지금 배워야 할 최고의 프로그래밍 언어 10가지
- Google Meet에서 Snap Camera 사용하는 방법
- Windows 10에서 동영상에서 프레임 추출하는 방법
이 가이드가 도움이 되었기를 바라며, 'Java 가상 머신을 생성할 수 없습니다' 문제를 성공적으로 해결하셨기를 바랍니다. 어떤 방법이 가장 효과적이었는지 알려주세요. 궁금한 점이나 제안 사항이 있다면 댓글로 자유롭게 남겨 주세요.