
384MB RAM이 있는 vps에서 파일을 실행하려고 합니다. 터미널에서 이 명령을 사용하여 파일을 실행하면
java -jar server.jar
단지 프로세스가 시작되지만 대략 180MB만 할당되어 있으므로 사용 가능한 모든 RAM을 할당해야 합니다. 그렇지 않으면 서버가 충돌을 멈출 것입니다. free -m 명령을 실행하면 다음과 같은 출력이 표시됩니다.
total used free shared buffers cached
Mem: 384 58 325 6 0 44
-/+ buffers/cache: 14 369
Swap: 96 0 96
그래서 저는 이와 같이 다양한 양의 RAM을 사용하여 많은 명령을 시도했지만 아무도 작동하지 않았습니다. Java는 Java 가상 머신을 만들 수 없습니다.
java -Xms32M -Xmx256M -jar minecraft_server.jar
최대 램, 절반을 넣고 값을 변경하려고 시도했지만 오류가 발생합니다. 1GB vps에서 동일한 파일을 실행하기 전에는 해당 명령이 제대로 작동했습니다.
java -Xmx1024M -Xms1024M -jar bukkit.jar
내 자바 버전은 다음과 같습니다
java version "1.7.0_55"
OpenJDK Runtime Environment (IcedTea 2.4.7) (7u55-2.4.7-1ubuntu1)
OpenJDK Client VM (build 24.51-b03, mixed mode)
내 OS는 Ubuntu Server 12.04 x86입니다. 도와주셨으면 좋겠습니다. 이틀 동안 같은 문제가 발생했습니다.
편집: RAM 용량이 다른 오류 메시지
root@vps-dot-me:~# java -Xms32M -Xmx384M -jar mine.jar
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
root@vps-dot-me:~# java -server -Xms128M -Xmx256M -jar mine.jar
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
root@vps-dot-me:~# java -XX:MaxHeapSize=256m -jar mine.jar
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
답변1
메모리 할당이 너무 작을 수 있습니다. 한 번에 조금씩 늘려보세요. 더 작은 것에서 실패하면 다음으로 더 큰 할당을 시도하십시오.
export _JAVA_OPTIONS="-Xms128m -Xmx128m
export _JAVA_OPTIONS="-Xms256m -Xmx256m
export _JAVA_OPTIONS="-Xms512m -Xmx512m
export _JAVA_OPTIONS="-Xms1024m -Xmx1024m
동일하게 설정한 후 이 명령을 실행하십시오.
java -jar yourJavaApp.jar
(앱의 디렉터리 내에 있어야 합니다).
옵션으로 전달하여 "일시적으로" 시도해 볼 수 있습니다.
java -Xms128m -Xmx128m -jar yourJavaApp.jar
JRE에 할당된 메모리가 충분하지 않기 때문에 실패합니다. 아마도 열려 있는 앱을 너무 많이 실행하고 있거나 메모리가 부족할 수도 있습니다.