Comment modifier les paramètres d'exécution Java?


16

Sous Windows, je pouvais changer la quantité de RAM que Java pouvait utiliser en tapant quelque chose comme -Xincgc -Xmx2048M dans les paramètres d'exécution Java. Comment puis-je faire cela dans Ubuntu?

Réponses:


6

Si je ne me trompe pas, ce sont les mêmes sous Linux. Avec la commande Java, vous avez 2 options:

  • Xmx définit la taille maximale du segment de mémoire.
  • Xms définit la taille minimale du segment de mémoire.

Cela -Xmx1024m -Xms128mdevrait donc fonctionner.

Voici un extrait de faire un man javadans le terminal

-Xmsn
                Specify the initial size, in bytes, of the memory allocation
                pool. This value must be a multiple of 1024 greater than 1MB.
                Append the letter k or K to indicate kilobytes, or m or M to
                indicate megabytes. The default value is chosen at runtime
                based on system configuration. For more information, see
                HotSpot Ergonomics
                Examples:

                       -Xms6291456
                       -Xms6144k
                       -Xms6m

 -Xmxn
                Specify the maximum size, in bytes, of the memory allocation
                pool. This value must a multiple of 1024 greater than 2MB.
                Append the letter k or K to indicate kilobytes, or m or M to
                indicate megabytes. The default value is chosen at runtime
                based on system configuration. For more information, see
                HotSpot Ergonomics
                Examples:

                       -Xmx83886080
                       -Xmx81920k
                       -Xmx80m

Donc, cela résume essentiellement les doutes en utilisant les mêmes paramètres.

Pour l'utiliser, accédez à un terminal et saisissez-le avec un programme jar. Dans mon exemple , je suis en utilisant le serveur minecraft: java -Xms1024M -Xmx2048M -jar minecraft.jar.

Voici une image de ce qui se passe:

entrez la description de l'image ici

Je dois noter que les paramètres sont sensibles à la casse . Donc, xmx1024M n'est pas identique à Xmx1024M.


Eh bien, je n'ai pas demandé quels paramètres utiliser. J'ai demandé où je devrais taper les paramètres. Si je tape -Xmx1204m -Xms128m, cela dit commande inconnue.
— Andri

D'après votre question, il semblait que vous saviez déjà où les taper puisque vous les utilisiez déjà. Pardon. J'ai mis à jour la réponse pour inclure une image de la sortie de la commande et la ligne de commande complète pour java et paramètres. Tout est tapé depuis le terminal.
— Luis Alvarado

10

La même chose s'applique à Linux. Si vous souhaitez rendre les options permanentes, vous pouvez exporter la JAVA_OPTSvariable d'environnement.

Je recommande de le faire sur une base par utilisateur. Modifiez le .profilefichier dans votre répertoire personnel (ou .bash_profiles'il existe et que vous utilisez bash) pour inclure cette ligne:

export JAVA_OPTS='-Xincgc -Xmx2048M'

Après avoir défini cela, vous devez redémarrer les sessions shell pour qu'il s'applique.

Alternativement, vous pouvez également modifier le profil à l'échelle du système dans / etc / profile.

Modifier: les paramètres du plug-in de navigateur Java sont définis dans le panneau de configuration Java: http://docs.oracle.com/javase/1.4.2/docs/guide/plugin/developer_guide/control_panel.html .


Comment la même chose s'applique-t-elle à Linux? Je ne peux pas accéder au Panneau de configuration, ouvrir Java et modifier les paramètres. Que fais-je?
— Andri

1
Si je ne me trompe pas, ce panneau de contrôle s'applique uniquement au plug-in Java pour le navigateur. Si c'est ce que vous recherchez, il se trouve dans / jre / bin / ControlPanel ( docs.oracle.com/javase/1.4.2/docs/guide/plugin/developer_guide/… )
— jjmontes

Ce n'est pas ce que je voulais dire. Tout ce que je dois savoir, c'est comment je pourrais faire en sorte que Java puisse utiliser plus de RAM qu'aujourd'hui.
— Andri
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.