블루스크린

DLL·런타임 오류

드라이버 문제

게임 오류

윈도우 오류

프로그램 오류

광고자리 · 글 위

마인크래프트 종료 코드 1 원인 4가지와 증상별 해결 순서 (자바 실행 오류)

이 글을 3줄로 요약하면

· 종료 코드 1은 원인을 담은 코드가 아니라 "자바가 비정상으로 끝났다"는 신호뿐입니다.

· 그래서 코드만 검색해서는 답이 안 나옵니다. 실제 원인은 로그 파일 안에 적혀 있습니다.

· 원인은 네 갈래입니다. 판별표에서 자기 증상을 찾아 해당 섹션부터 처리하면 됩니다.

종료 코드 1은 정확히 무슨 뜻인가

오류 코드가 아니라 프로세스 종료값입니다. 이 차이를 알면 헤매는 시간이 줄어듭니다.

마인크래프트 자바 에디션은 자바 가상 머신 위에서 도는 프로그램입니다. 런처가 자바를 실행하고, 자바가 게임을 띄웁니다. 그 자바 프로세스가 끝날 때 운영체제에 남기는 값이 종료 코드입니다.

정상적으로 게임을 나가면 0이 돌아옵니다. 0이 아닌 값은 전부 "정상적으로 끝나지 않았다"는 뜻이고, 그중 가장 흔한 값이 1입니다. 런처는 이 값을 그대로 화면에 옮겨 "게임 종료됨, 종료 코드: 1"이라고 보여줄 뿐입니다.

종료 코드 1은 "어디가 잘못됐다"가 아니라 "잘못됐다"까지만 알려줍니다. 그래서 이 숫자만으로 원인을 특정할 수 없고, 반드시 로그를 함께 봐야 합니다.

그럼에도 원인이 무한하지는 않습니다. 자바가 게임 코드에 닿기도 전에 끝나는 경우(버전·메모리·경로 문제)와, 게임이 뜨는 도중 무언가와 충돌해 끝나는 경우(모드·설정 문제)로 크게 갈립니다. 아래 판별표가 그 갈림길입니다.

런처가 쓰는 자바와 명령 프롬프트의 자바는 다를 수 있습니다

공식 런처는 게임 버전에 맞는 자체 자바 런타임을 따로 내려받아 씁니다. 그래서 명령 프롬프트에서 java -version이 8로 나와도 순정 플레이는 멀쩡할 수 있고, 반대로 자바 21을 새로 깔아도 런처 설정을 바꾸지 않으면 아무것도 달라지지 않습니다. 어느 자바가 쓰이는지는 런처 설정에서 확인해야 합니다.

증상으로 원인 좁히기

"언제 꺼지는가"와 "무엇을 바꾼 뒤부터인가"가 원인을 거의 가려줍니다.

증상 유력한 원인 먼저 볼 항목
최근에 게임 버전을 올린 뒤부터 안 켜진다 새 버전이 요구하는 자바 버전이 올라감 원인 A → 버전별 요구 자바 확인
검은 창이 깜빡하고 사라진다. 마인크래프트 로고도 안 뜬다 자바가 시작 단계에서 바로 종료 (버전·메모리) 원인 A → B 순서
JVM 인수를 손댄 뒤부터 안 켜진다 실제 램보다 큰 값을 할당해 가상 머신이 시작 실패 원인 B → -Xmx 값 되돌리기
로고와 로딩 바까지 뜬 뒤에 꺼진다 모드·리소스팩·설정 파일 충돌 원인 C → mods 절반 나누기
순정인데도 꺼진다. 다른 PC에서는 같은 계정이 잘 된다 폴더 경로·권한 또는 보안 프로그램 차단 원인 D → 경로와 제외 목록 확인
어떤 때는 켜지고 어떤 때는 꺼진다 이전 실행의 자바 프로세스가 남아 파일을 잠금 원인 B → 잔여 프로세스 정리

원인 A게임 버전이 요구하는 자바가 아니다

게임 버전마다 최소 자바 버전이 정해져 있습니다. 낮으면 게임 코드에 닿기도 전에 끝납니다.

마인크래프트는 버전이 올라갈 때마다 요구하는 자바 버전도 함께 올렸습니다. 정리하면 이렇습니다.

게임 버전 최소 요구 자바
1.12 ~ 1.16.5 자바 8 이상
1.17 ~ 1.17.1 자바 16 이상
1.18 ~ 1.20.4 자바 17 이상
1.20.5 ~ 1.21 계열 자바 21 이상

여기서 중요한 건 "어떤 자바가 깔려 있느냐"가 아니라 "런처가 어떤 자바를 쓰고 있느냐"입니다. 공식 런처는 버전에 맞는 런타임을 스스로 받아 쓰기 때문에, 순정 플레이라면 대개 이 문제가 생기지 않습니다. 반대로 설정에서 자바 실행 파일을 직접 지정해 둔 경우에는 그 경로가 낡은 자바를 가리키고 있을 수 있습니다.

1런처가 쓰는 자바를 확인합니다

런처의 게임 설치 구성(Installations) 목록에서 해당 항목의 편집 → 추가 옵션을 펼치면 Java 실행 파일 경로가 보입니다. 여기에 직접 지정한 경로가 들어 있다면 그 자바가 실제로 쓰이는 자바입니다. 비어 있으면 런처가 관리하는 런타임을 쓰는 상태라 정상입니다.

2따로 설치한 자바의 버전을 확인합니다

java -version

시작 버튼을 우클릭해 터미널(관리자)을 열고 실행합니다. 이 결과는 서버 실행이나 모드 로더 설치 프로그램이 쓰는 자바를 뜻합니다. 출력에 64-Bit Server VM이 없고 32비트로 나온다면 그것만으로도 실행 실패의 원인이 됩니다.

364비트 윈도우인지 확인하고 같은 계열로 설치합니다

Win + I → 시스템 → 정보에서 시스템 종류가 64비트인지 봅니다. 64비트인데 32비트 자바가 깔려 있으면 쓸 수 있는 메모리가 크게 제한돼 게임이 뜨다 말고 꺼집니다. 새로 설치할 때는 x64 표기가 붙은 설치 파일을 고릅니다.

최신 자바를 깔면 무조건 좋은 것은 아닙니다

런처는 커스텀 자바를 지정할 때 게임이 요구하는 버전과 주 버전이 맞아야 받아들입니다. 자바 17을 요구하는 버전에 자바 25를 물려두면 실행이 거부될 수 있습니다. 특별한 이유가 없다면 런처가 관리하는 런타임을 그대로 쓰는 것이 가장 안전합니다.

이 방법이 안 통하는 경우

자바 버전이 요구 조건에 맞는데도 검은 창이 깜빡하고 사라진다면, 자바는 찾았지만 가상 머신이 시작하지 못한 상태입니다. 원인 B로 넘어가세요.

원인 B할당 메모리 설정이 잘못됐다

램을 넉넉히 준다고 좋아지지 않습니다. 실제 램보다 크면 아예 시작하지 못합니다.

모드를 돌리려고 JVM 인수의 -Xmx 값을 크게 올려두는 경우가 많습니다. 그런데 이 값은 가상 머신이 시작할 때 확보를 시도하는 상한입니다. 시스템이 그만큼 내줄 수 없으면 가상 머신은 게임을 띄우기도 전에 종료되고, 런처에는 종료 코드 1만 남습니다.

1남아 있는 자바 프로세스를 먼저 끝냅니다

Ctrl + Shift + Esc로 작업 관리자를 열고 프로세스 목록에서 Java(TM) Platform SE binary 또는 OpenJDK Platform binary 항목을 찾아 작업 끝내기를 누릅니다. 이전 실행이 남아 메모리를 쥐고 있으면 다음 실행이 같은 이유로 실패합니다.

2같은 화면에서 쓸 수 있는 메모리를 확인합니다

작업 관리자의 메모리 열을 보면 지금 무엇이 얼마나 쓰고 있는지 나옵니다. 브라우저와 배경 프로그램이 이미 상당량을 쓰고 있다면, 남는 양을 기준으로 할당값을 정해야 합니다.

3JVM 인수를 기본값 근처로 되돌립니다

-Xmx2G

런처의 게임 설치 구성 → 편집 → 추가 옵션 → JVM 인수에서 값을 위처럼 낮춰 저장하고 실행해 봅니다. 켜지면 원인이 확정된 것이니, 거기서부터 조금씩 올리며 안정적인 지점을 찾습니다.

할당량은 전체 램의 절반을 넘기지 않는 편이 낫습니다

윈도우와 다른 프로그램도 램을 씁니다. 8GB 시스템에서 6GB를 할당하면 게임이 켜지더라도 시스템 전체가 버벅이고, 부족한 순간 그대로 종료됩니다. 8GB면 2~3GB, 16GB면 4~6GB가 무난한 시작점입니다.

이 방법이 안 통하는 경우

JVM 인수를 손댄 적이 없고 값도 기본값 그대로인데 꺼진다면 메모리 문제가 아닙니다. 로고와 로딩 바까지 보였다가 꺼진다면 원인 C, 아예 아무것도 안 뜬다면 원인 D로 갑니다.

원인 C모드·리소스팩·설정 파일이 충돌한다

하나씩 빼면 오래 걸립니다. 절반씩 나누면 몇 번 만에 범인이 나옵니다.

게임 로고와 로딩 바까지 보인 뒤에 꺼진다면, 자바는 정상적으로 떴고 게임이 내용을 읽는 도중 끝난 것입니다. 이 구간에서 가장 흔한 범인은 게임 버전과 맞지 않는 모드, 서로 충돌하는 모드 조합, 그리고 손상된 설정 파일입니다.

1먼저 세이브 폴더를 백업합니다

Win + E로 탐색기를 열고 주소창에 %appdata%\.minecraft를 붙여넣습니다. 안의 saves 폴더를 통째로 복사해 다른 위치에 둡니다. 이 작업은 되돌리기 어려운 단계가 뒤에 있으므로 순서를 지킵니다.

2mods 폴더를 비운 상태로 한 번 실행합니다

같은 폴더의 mods 안 파일을 전부 다른 폴더로 옮긴 뒤 게임을 켭니다. 여기서 정상적으로 켜지면 원인은 모드로 확정입니다. 그래도 꺼진다면 모드 문제가 아니므로 아래 4번으로 건너뜁니다.

3절반씩 되돌려 넣으며 범위를 좁힙니다

빼둔 모드의 절반만 다시 넣고 실행합니다. 켜지면 문제는 나머지 절반에 있고, 꺼지면 방금 넣은 절반에 있습니다. 같은 방식을 반복하면 모드가 32개여도 다섯 번이면 범인이 나옵니다. 하나씩 빼면 서른 번을 켜야 합니다.

4순정인데도 꺼지면 설정 파일을 초기화합니다

같은 폴더의 options.txt를 다른 이름으로 바꿔두고 실행합니다. 화면 설정이 손상돼 있으면 이것만으로 켜지는 경우가 있습니다. 그래도 안 되면 런처의 게임 설치 구성에서 해당 버전을 다시 받게 합니다.

.minecraft 폴더를 통째로 지우지 않습니다

이 폴더 안에 세이브·스크린샷·리소스팩이 함께 들어 있습니다. "초기화"를 권하는 글이 많지만, 지우기 전에 saves와 resourcepacks만이라도 반드시 밖으로 옮겨두어야 합니다.

이 방법이 안 통하는 경우

모드를 다 빼고 설정도 초기화했는데 여전히 꺼진다면 게임 내용 문제가 아닙니다. 파일을 읽는 것 자체가 막힌 상태일 수 있으니 원인 D로 넘어가세요.

원인 D경로나 보안 프로그램이 실행을 막는다

같은 계정이 다른 PC에서는 잘 된다면 계정이 아니라 이 PC의 환경 문제입니다.

자바는 파일 경로를 다룰 때 영문·숫자 위주 경로에서 가장 안정적으로 동작합니다. 윈도우 계정 이름이 한글이면 게임 폴더 경로가 C:\Users\홍길동\AppData\Roaming\.minecraft처럼 만들어지는데, 일부 모드 로더나 라이브러리가 이 경로를 제대로 처리하지 못해 실행 도중 끝나는 경우가 있습니다.

1게임 폴더를 영문 경로로 옮깁니다

계정 이름 자체를 바꾸는 것은 다른 프로그램까지 망가뜨릴 수 있어 권하지 않습니다. 대신 C:\Games\Minecraft처럼 새 폴더를 만들고, 런처의 게임 설치 구성 → 편집 → 게임 디렉터리를 그 경로로 지정합니다.

2동기화 폴더 안에 두지 않습니다

바탕화면·문서 폴더가 클라우드 동기화 대상이면, 게임이 쓰는 도중 동기화 프로그램이 같은 파일을 붙잡아 충돌합니다. 게임 폴더는 동기화되지 않는 위치에 두는 편이 안전합니다.

3게임 폴더를 보안 제외 목록에 등록합니다

Win + I → 개인 정보 및 보안 → Windows 보안 → Windows 보안 열기 → 바이러스 및 위협 방지 → 설정 관리 → 제외 추가 또는 제거에서 폴더를 선택하고 게임 폴더를 지정합니다. 자바로 만들어진 모드 로더는 오탐으로 격리되는 일이 잦습니다.

4그래픽 드라이버를 최신으로 맞춥니다

게임은 화면을 그리기 위해 그래픽 드라이버의 기능을 호출합니다. 드라이버가 아주 오래됐으면 이 호출에서 실패해 창이 뜨자마자 닫힐 수 있습니다. 제조사 프로그램에서 드라이버 버전을 확인하고 최신으로 올린 뒤 다시 실행합니다.

이 방법이 안 통하는 경우

네 가지를 다 확인했는데도 같은 자리에서 꺼진다면, 이제 추측을 멈추고 로그를 직접 읽어야 합니다. 아래 진단 섹션이 그 방법입니다.

이 단계에서 막혔다면 0xc0000135 오류 해결법 – 응용 프로그램을 시작하지 못했습니다 완벽 정리 실행 환경이 없어서 프로그램이 시작 단계에서 끝나는 같은 계열의 문제입니다 · 눌러서 확인하기 →

로그로 원인을 확정하는 법

종료 코드 1이 감춘 진짜 이유는 텍스트 파일 안에 그대로 적혀 있습니다.

Win + E로 탐색기를 열고 주소창에 %appdata%\.minecraft\logs를 붙여넣습니다. 그 안의 latest.log가 가장 최근 실행 기록입니다. 메모장으로 열고 맨 아래에서 위로 읽으면서 아래 문구를 찾습니다.

로그에 보이는 문구 해당하는 원인
UnsupportedClassVersionError / class file version 원인 A — 요구 버전보다 낮은 자바로 실행됨
Could not reserve enough space / OutOfMemoryError 원인 B — 할당 메모리가 실제 가용량을 넘음
특정 모드 이름 + Exception / mixin 원인 C — 그 모드가 범인
AccessDeniedException / FileNotFoundException 원인 D — 경로·권한·보안 프로그램 차단

게임이 조금이라도 뜬 뒤에 꺼졌다면 %appdata%\.minecraft\crash-reports 폴더도 함께 봅니다. 여기 파일은 맨 위쪽에 요약이 정리돼 있어 로그보다 읽기 쉽습니다.

로그 파일이 아예 만들어지지 않는다면 자바 프로세스가 로그를 쓸 단계에도 못 갔다는 뜻입니다. 이때는 Win + R → eventvwr.msc로 이벤트 뷰어를 열고 Windows 로그 → 응용 프로그램에서 해당 시각의 오류를 확인합니다. 하단 일반 탭의 오류 모듈 이름에 자바 관련 파일이 찍혀 있으면 원인 A나 B, 보안 제품 이름이 찍혀 있으면 원인 D입니다.

자주 묻는 질문

자바 설치와 재설치를 앞두고 가장 많이 걸리는 지점들입니다.

Q.자바를 따로 설치해야 하나요?

A.순정 플레이만 한다면 필요 없습니다. 공식 런처가 버전에 맞는 런타임을 알아서 내려받습니다. 자바를 직접 설치해야 하는 경우는 서버를 직접 돌릴 때, 그리고 모드 로더 설치 프로그램을 실행할 때입니다.

Q.자바를 여러 버전 깔아도 괜찮나요?

A.여러 버전이 공존해도 문제는 없습니다. 다만 명령 프롬프트에서 어떤 버전이 잡히는지는 환경 변수 Path의 순서가 정합니다. 게임 실행 자체는 런처 설정이 우선이므로, Path만 고치고 "달라진 게 없다"고 느끼는 경우가 많습니다.

Q.JAVA_HOME은 꼭 설정해야 하나요?

A.게임 실행에는 필수가 아닙니다. 다만 서버 실행 스크립트나 개발 도구는 이 값을 참조하므로, 자바를 직접 쓸 일이 있다면 설치 경로를 시스템 변수 JAVA_HOME에 넣고 %JAVA_HOME%\bin을 Path에 추가하는 방식이 표준입니다.

Q.런처를 재설치하면 세이브가 사라지나요?

A.런처와 게임 데이터는 저장 위치가 다릅니다. 런처만 지웠다 다시 깔면 %appdata%\.minecraft\saves는 그대로 남습니다. 다만 작업 전에 이 폴더를 복사해 두는 습관이 안전합니다.

Q.램을 많이 줄수록 좋은 것 아닌가요?

A.아닙니다. 할당량이 크면 정리 작업이 한 번에 몰려 오히려 끊김이 커지고, 시스템이 내줄 수 없는 값이면 아예 시작하지 못합니다. 모드 개수에 맞춰 필요한 만큼만 주는 것이 맞습니다.

Q.종료 코드 0이나 다른 숫자가 뜨면 원인이 다른가요?

A.0은 정상 종료라 문제 상황이 아닙니다. 그 밖의 숫자는 자바가 아닌 운영체제가 프로세스를 끝낸 경우가 많아, 메모리 부족이나 드라이버 충돌 쪽을 먼저 봅니다. 어느 쪽이든 확인 방법은 같습니다. 로그부터 읽는 것입니다.

함께 보면 좋은 글

게임이 실행 도중 꺼질 때 같이 확인하면 좋은 글을 모았습니다.

배틀그라운드 치명적 오류(Fatal Error), 저는 이 순서로 해결했습니다 (2026년 최신) 게임이 뜨는 도중 꺼질 때 로그로 범인을 찾는 방법이 겹칩니다 · 눌러서 확인하기 → VIDEO_TDR_FAILURE 블루스크린, 저는 이 순서로 잡았습니다 (그래픽 드라이버 응답 없음 완전정리) 그래픽 드라이버가 원인일 때 확인하는 순서를 담았습니다 · 눌러서 확인하기 → 이지 안티치트 설치 실패 오류 해결법 (배그·포트나이트·에이펙스 공통) 보안 프로그램이 게임 구성 요소를 막을 때의 대처가 같습니다 · 눌러서 확인하기 →
확인 환경 · 윈도우 11 24H2 / 윈도우 10 22H2 기준, 2026년 8월 확인
참고 문서 · Microsoft Learn — Windows에서 Java 시작하기 / Minecraft Wiki — 버전별 요구 자바 정리

광고자리 · 글 아래