7
votes

Ant_opts -xmx1024m ne fonctionne pas

Je fixe des ant_opts dans l'environnement vers "-XMS256M -XMX1024M". Après cela, je ne suis pas en mesure d'exécuter des fichiers de fourmis à partir de l'invite de commande. Cela me jette une erreur de:

"Erreur s'est produite lors de l'initialisation de la machine virtuelle Impossible de réserver assez d'espace pour le tas d'objets Impossible de créer la machine virtuelle Java. "

Bien que j'ai suffisamment de mémoire physique disponible (plus de 2048m disponible) pour allouer 1024m pour ant_opts, mais il jette toujours l'erreur ci-dessus. Peut-il y avoir une autre raison pour laquelle je ne peux pas définir xmx à 1024 m?


1 commentaires

Il devrait allouer seulement 265MB et pas 1024 Mo d'abord. Quel est votre système d'exploitation? Avez-vous essayé simplement d'utiliser ant_opts = "- xms64m". 64 Mo devrait être la valeur par défaut. Cela déterminera s'il y a un problème de mémoire ou la façon dont Ant_opts est interprété. Avez-vous essayé de modifier le script de shell d'ant sous $ ant_home / bin / ant ou le script de lot de fourmis% ant_home% / bin / ant.bat pour faire écho plus d'informations? Vous pouvez ajouter "SET -XV" au script de Shell ant.


3 Réponses :


5
votes

Vous ne mentionnez pas quel système d'exploitation vous utilisez. Si vous êtes sur Windows (surtout 32 bits), je vois souvent des problèmes allouant plus que, disons, 800 Mo en tant que tas, quelle que soit la mémoire réelle que vous disposez. Ce n'est pas vraiment Windows Bashing: le Windows JVM souhaite attribuer tout son tas dans un morceau contigu et s'il ne peut pas commencer à démarrer.

Je pense Mémoire maximale Java sur Windows XP fait un bon travail de Expliquer le problème et comment vous pourriez essayer de le résoudre.


0 commentaires

6
votes

Quoi qu'il en soit, voici comment résoudre ce problème:

Aller au démarrage-> Panneau de commande-> Système-> Avancé (Tab) -> Variables d'environnement-> Variables du système -> Nouveau: P>

  • Nom de la variable: _JAVA_OPTIONS LI>
  • Valeur variable: -XMX512M LI> ul>

    ou p> xxx pré>

    ou p>

    modifie l'appel des fourmis comme indiqué ci-dessous. P>

    <exec>
       <arg value="-J-Xmx512m" />
    </exec>
    


1 commentaires

N'a pas fonctionné pour moi. J'ai essayé de définir la variable à l'aide de l'ensemble et il ne l'a pas créé. Ensuite, j'ai ajouté que cela allait passer manuellement sur le bouton Variables de l'environnement dans les propriétés du système avancé et réaffecter mon Tagversion AntVersion et la même chose. C'était sur Windows 7.



0
votes

Qu'est-ce que vous avez défini initialement en tant que tas minimum, le JVM essaiera d'allouer au démarrage.Il semble dans votre machine (32 bits que je suppose) le JVM est incapable d'allouer et de démarrer JVM échoue. Essayez de définir -xms à 128 ou moins. Cela devrait fonctionner.


2 commentaires

Et où est cet ensemble?


Peu importe, j'ai compris que vous exécutez la commande sur une ligne de commande: java -xms128m , par exemple. Peut-être que banal pour certains de savoir déjà, mais je pense que cela aurait dû être dans la réponse.