2010-11-16 4 views
3

Je reçois le message d'erreur "Impossible de démarrer: pas assez de mémoire" lorsque j'exécute mon code avec "java -Xmx30G ExampleCode".Impossible de démarrer: pas assez de mémoire avec -Xmx30G

Cette erreur ne se produit pas lorsque je ne spécifie pas la taille de la machine virtuelle Java. Quelqu'un at-il une idée de la raison pour laquelle je reçois ce message d'erreur lorsque je définis la taille de la machine virtuelle? Si -Xmx est plus petit que 1G alors il s'exécute, sinon je reçois le message d'erreur mentionné.

Merci d'avance pour toute aide!

Et oui, il y a assez de RAM :) (72G disponible).

BTW, JavaHome est /opt/jre1.6.0_20

+0

Vous avez 72 concerts sur votre machine? Man, j'ai besoin d'améliorer. –

+0

Hehe je sais, c'est génial: D! BTW, problème résolu en choisissant le jvm 64 bits. Merci à tous de m'avoir aidé! – mkn

Répondre

4

Le système d'exploitation peut imposer une limite à la taille d'un processus peut être. Par exemple, dans les fenêtres 32 bits, la limite est de ~ 2 Go, même si votre machine dispose de 4 Go de RAM. Vérifiez les paramètres du système d'exploitation et assurez-vous que vous exécutez une machine virtuelle Java sur laquelle cela est autorisé (par exemple, si vous utilisez un système 64 bits prenant en charge cette taille, veillez à exécuter la machine virtuelle Java 64 bits)

1

Vérifiez que vous utilisez la JVM 64 bits. Je pense que la limite de mémoire de 32 bits est d'environ 4 Go de mémoire.

1

Vous avez besoin de 64bit jvm pour utiliser plus de 2/3Gb (dépend de la version os).

Questions connexes