Linux - Java - Fehler während der Initialisierung aufgetreten ist der VM
Ich durchgemacht habe ALSO ähnliche Fragen, aber keiner von Ihnen gab eine richtige funktionierende Antwort w.r.t mein setup (die Antworten auf die anderen Fragen wurden anwendbar für Windows-Rechner, 64-bit).
Habe ich Folgendes setup:
$
$ uname -a
Linux localhost.localdomain 3.8.4-102.fc17.i686 #1 SMP Sun Mar 24 13:20:55 UTC 2013 i686 i686 i386 GNU/Linux
$
$ java -version
java version "1.7.0_17"
Java(TM) SE Runtime Environment (build 1.7.0_17-b02)
Java HotSpot(TM) Server VM (build 23.7-b01, mixed mode)
$
$ javac -version
javac 1.7.0_17
$
$
$ free -m
total used free shared buffers cached
Mem: 3520 3435 85 0 472 1531
-/+ buffers/cache: 1431 2089
Swap: 5567 0 5567
$
$
$ echo $JAVA_HOME
/usr/java/jdk1.7.0_17
$
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/usr/java/jdk1.7.0_17/bin
$
Ich erhalte die folgende Fehlermeldung beim ausführen von java-Programmen!
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.
Brauche ich, um ein upgrade zu 64-bit OS
und installieren 64-bit JVM
? oder sollte ich ein upgrade meiner hardware mit mehr RAM
?
- Was ist die Befehlszeile, die Sie verwenden, um das Programm zu starten. Geben Sie alle Xmx/Xms Werte? Bitte geben Sie die vollständige Befehlszeile.
- Es ist ziemlich offensichtlich, dass es war nicht in der Lage, reservieren Sie Speicher für die JVM (heap). Was ist die Befehlszeile oder Skript, das Sie benutzt, um das Programm zu starten?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Besuchen Sie bitte Die Ausführung von java mit JAVA_OPTS env-variable, HEX bietet, dass Sie sollten _JAVA_OPTIONS variable.
Müssen Sie prüfen, ob Sie irgendwelche JAVA_OPTS definiert:
echo $JAVA_OPTS
. Geben Sie heap-Größe?Zunächst können Sie versuchen, die Zuweisung von mehr RAM für Ihren Computer.
Zweitens, können Sie versuchen, und führen Sie den java-Befehl mit angegeben MaxHeapSize und vielleicht Xmx/Xms.
Check-out Tuning der JVM-heap-Größen in den Oracle docs.
Blick auf die Speicher, Sie müssen nur 85mb zur Verfügung. Möchten Sie vielleicht, um freien Speicher vor dem Start von Ihrem Programm. Auch, versuchen Sie es mit den folgenden Kommandozeilen-Optionen:
-Xmx512m
,-XX:MaxHeapSize=256m