Java N'a pas pu réserver suffisamment d'espace pour l'erreur de tas d'objets


J'ai Java7 fonctionnant sur Windows 32 bits et 4 Go de RAM, mais:

java -Xmx4G -Xms4G -jar Minecraft.jar 
java -Xmx3G -Xms3G -jar Minecraft.jar 
java -Xmx2G -Xms2G -jar Minecraft.jar

...ne fonctionne toujours pas. Erreur:

Une erreur s'est produite lors de l'initialisation de la machine virtuelle
Impossible de réserver suffisamment d'espace pour le tas d'objets
Erreur: Impossible de créer la machine virtuelle Java.
Erreur: Une erreur fatale s'est produite. Le programme va quitter.

java -Xmx1G -Xms1G -jar Minecraft.jar fonctionne. Pourquoi?

Author: AndrewSmiley, 2013-08-04

8 answers

Aller à StartControl PanelSystemAdvanced system settingsadvanced(tab)Environment VariablesSystem VariablesNew:

Variable name: _JAVA_OPTIONS
Variable value: -Xmx512M
 48
Author: user3755563, 2016-05-23 07:36:25

Si vous passez par ce lien IBM sur java, il est indiqué que sur Windows 32 bits, la taille de tas recommandée est de 1,5 Go et la taille maximale de tas est de 1,8 Go. Donc, votre jvm n'est pas initialisée pour -Xmx2G et au-dessus.

De plus, si vous passez par this SO answer, il est clair que les liaisons DLL sont un problème pour le changement de réservation de mémoire, ce qui n'est pas une tâche triviale. Par conséquent, ce qui peut être recommandé, c'est que vous optiez pour Windows 64 bits et une JVM 64 bits. alors qu'il va mâcher plus de RAM, vous avoir beaucoup plus d'espace d'adressage virtuel contigu.

 8
Author: rahulserver, 2017-05-23 12:34:33

J'ai eu ce problème. Je l'ai résolu en téléchargeant 64x du Java. Voici le lien: http://javadl.sun.com/webapps/download/AutoDL?BundleId=87443

 6
Author: user3573306, 2014-04-25 14:20:03

Cela se produisait pour moi et c'est une solution si facile.

  1. vous devez vous assurer que vous avez le bon java pour votre système tel que 32bit ou 64bit.
  2. Si vous avez installé le bon logiciel et qu'il se produit toujours, goto

    control panelsystemadvanced system settings pour Windows 8 ou

    control panelsystem and securitysystemadvanced system settings pour Windows 10.

  3. vous devez aller dans l'onglet {advanced}, puis cliquer sur {Environment Variables}.
  4. vous allez cliquez sur {Nouveau} sous le <system variables>
  5. , vous allez créer une nouvelle variable. Nom de la variable: _JAVA_OPTIONS Valeur de la variable: -Xmx512M

C'est du moins ce qui a fonctionné pour moi.

 6
Author: Sealteam241, 2016-05-23 07:38:39

4 Go de RAM ne signifie pas que vous pouvez tout utiliser pour le processus java. Beaucoup de RAM est nécessaire pour les processus système. Ne pas aller au-dessus de 2 Go ou ce sera des problèmes certains.

Avant de démarrer la jvm, vérifiez simplement la quantité de RAM disponible, puis définissez la mémoire en conséquence.

 2
Author: Lokesh, 2013-08-04 06:37:28

Pour vous assurer qu'il exécute la version 64 bits de java ont comme ceci:

"c:\Program Fichiers \ Java\jre7\bin \ java.exe " - Xmx1536M-Xms1536M-XX:MaxPermSize=256M-jar forge-1.6.4-9.11.1.965-universel.jar

Jetez un œil à la version jre que vous avez installée au cas où.. x64 doit être dans program files tandis que x32 réside dans Program Files (x86)

 2
Author: Rudolf Rein, 2014-08-10 02:06:03

C'est ce qui a fonctionné pour moi (oui j'avais le même problème) ont été est dit quelque chose comme java -Xmx3G -Xms3G mettez java -Xmx1024M afin de l'exécuter.chauve-souris devrait ressembler à java -Xmx1024M -jar craftbukkit.jar -o false PAUSE

 1
Author: caleb, 2014-03-01 14:49:38

Double-cliquez sur Liferay CE Server - > ajouter-XX: MaxHeapSize=512m à la mémoire args - > Démarrer le serveur! Profiter...

C'est du travail pour moi!

 1
Author: user2284700, 2015-09-25 15:09:51