Tout d'abord, j'ai une boîte avec 8 Go de RAM, donc je doute que la mémoire totale soit le problème. Cette application fonctionne correctement sur les machines de 6 Go ou moins.
J'essaie de réserver 3 Go d'espace en utilisant -Xmx3G sous "Arguments VM" dans les configurations d'exécution dans Eclipse.
Chaque fois que j'essaye de réserver plus de 1500 Mo, j'obtiens cette erreur: «Une erreur s'est produite lors de l'initialisation de la VM; Impossible de réserver suffisamment d’espace pour le tas d’objets »à l’aide de -Xmx3G
Qu'est-ce qui se passe ici?
java
eclipse
jvm
jvm-arguments
user1212731
la source
la source
Réponses:
Serait-ce que vous utilisez un jvm 32 bits sur cette machine?
la source
Voici comment y remédier: Allez à
Start->Control Panel->System->Advanced(tab)->Environment Variables->System
Changez ceci en votre chemin approprié .
la source
Ce n'est en fait pas un problème spécifique à Eclipse; c'est un problème général de Java sur Windows. C'est à cause de la façon dont la JVM alloue la mémoire sous Windows; il insiste sur l'allocation d'un bloc de mémoire contigu, que souvent Windows ne peut pas fournir, même s'il y a suffisamment de blocs séparés pour satisfaire la demande d'allocation. Il existe des utilitaires qui essaieront d'aider Windows à "défragmenter" sa mémoire, ce qui, en théorie, aiderait cette situation; mais je ne les ai pas vraiment essayés sérieusement, donc je ne peux pas parler de leur efficacité. Une chose que j'ai parfois entendu dire qui pourrait aider est de redémarrer Windows et, avant de démarrer toute autre application, de lancer l'application Java qui a besoin de la grande partie de la mémoire. Si vous avez de la chance, Windows n'aura pas encore fragmenté son espace mémoire et Java obtiendra le bloc contigu demandé.
Quelque part sur les interwebs, il y a des explications et des analyses plus techniques sur ce problème, mais je n'ai aucune référence à portée de main.
J'ai trouvé cela, cependant, qui semble utile: https://stackoverflow.com/a/497757/639520
la source
Tout d'abord, le JRE de 32 bits ne peut pas utiliser plus d'environ 1,5 Go de RAM. Donc, si vous en voulez plus, utilisez un JRE 64bits.
Deuxièmement, quand une nouvelle JVM démarre, cette somme la propriété -Xmx de toutes les JVM en cours d'exécution, et vérifiez s'il reste suffisamment de mémoire sur le système pour fonctionner sur leur propre -Xmx, si cela ne suffit pas, l'erreur se produit.
la source
J'utilisais Liferay avec le serveur Tomcat d'Eclipse IDE. J'étais coincé avec cette même erreur en cliquant sur le démarrage du serveur. Double-cliquez sur le serveur d'Eclipse. il ouvre la page de présentation du serveur. Arguments de mémoire mis à jour de -Xmx1024m -XX: MaxPermSize = 256m à -Xmx512m -XX: MaxPermSize = 256m. Ensuite, cela fonctionnait pour moi.
la source
Assurez-vous qu'Eclipse exécute réellement la même JVM que vous pensez qu'elle exécute. Si vous utilisez java dans votre navigateur Web, vous avez probablement une version 32 bits flottante qui pourrait avoir la priorité si elle est installée ou mise à jour récemment.
Pour être absolument sûr, je recommande d'ajouter ces deux lignes à votre
eclipse.ini
fichier en haut:... où sur ma machine
C:/Java/jdk1.6.0_27/bin
où se trouve la JVM que je connais est 64 bits. Assurez-vous d'avoir lebin
dossier là-bas.(En prime, sur Windows 7, cela vous permet également d'épingler l'onglet, c'est pourquoi j'ai dû le faire pour mon propre usage)
la source
eclipse.ini
page: wiki.eclipse.orgC'est le problème de la taille du tas. Modifiez votre
.bat
(fichier Batch). Il peut afficher la taille du tas 1024. Changez-le en 512 Ensuite, cela devrait fonctionner.la source
J'ai également eu le même problème en utilisant Eclipse qui était de 32 bits et la JVM utilisée par elle était de 64 bits. Quand j'ai acheminé l'Eclipse vers la JVM 32 bits, cela a fonctionné
la source
Il suffit de mettre le
#
symbole devantorg.gradle.jvmargs=-Xmx1536m
dans gradle.propertiesla source
Vous essayez probablement de toute façon de mauvaises options. J'ai eu une erreur similaire avec le journal des erreurs de support:
Dans mon cas, le logiciel ne supportait pas encore java 8 (le script utilisait d'anciens arguments JVM) mais j'avais java 8 par défaut.
la source
L'une des raisons de ce problème est l'absence de mémoire disponible pour que Tomcat démarre. Essayez de supprimer le logiciel en cours d'exécution indésirable de Windows et redémarrez l'éclipse et le tomcat.
la source
Je sais que je suis un peu en retard, mais voici ma réponse:
Je viens d'installer la version en ligne Java d'Oracle (pas la version 64 bits hors ligne).
Après avoir ajouté la variable JAVA_HOME ENV, cela a juste fonctionné!
J'espère que je pourrais aider :)
la source