web-dev-qa-db-fra.com

Comment puis-je fournir des arguments JVM à VisualVM?

J'utilise VisualVM de JDK 1.6.0_26 pour profiler une application Web Java exécutée sous Tomcat, mais VisualVM me dit souvent qu'il ne dispose pas de suffisamment de mémoire pour prendre un instantané et qu'il utilise le commutateur -Xmx pour fournir davantage de mémoire à Netbeans. . Le problème est que j'utilise VisualVM en dehors de Netbeans. Comment puis-je fournir des arguments JVM à jvisualvm.exe?

86
Mike Partridge

Devrait pouvoir modifier les paramètres de mémoire dans %JDK_HOME%\lib\visualvm\etc\visualvm.conf

Xms et Xmx sont dans la ligne default_options.

124
Zack Macomber

ou je pense que cela fonctionne aussi:

jvisualvm.exe -J-Xmx512m (ou le montant dont vous avez besoin)

-J sur la ligne de commande .exe pour les paramètres uniques, ou le fichier .conf indiqué dans l'autre réponse pour la modification des valeurs par défaut

44
Kevin Welker

J'ai commencé avec 

jvisualvm -J-Xms1024m -J-Xmx2048m

et cela a fonctionné.

21
Prabhat Jha

Sous mac, vous pouvez les configurer en modifiant ce fichier.

/Applications/VisualVM.app/Contents/Resources/visualvm/etc/visualvm.conf

visualvm_default_options="-J-client -J-Xms4096m -J-Xmx5120m -J-XX:+IgnoreUnrecognizedVMOptions -J-Dnetbeans.accept_license_class=com.Sun.tools.visualvm.modules.startup.AcceptLicense -J-Dsun.jvmstat.perdata.syncWaitMs=10000 -J-Dsun.Java2d.noddraw=true"
15
aspdeepak

Pour Mac OSX 10.12+ 

Si vous avez téléchargé visualvm dmg depuis https://visualvm.github.io/download.html et que vous l’avez déplacé dans le répertoire Applications. Vous pouvez trouver le fichier de configuration visualvm.conf à l’emplacement Applications/VisualVM.app/Contents/etc/visualvm.conf. Dans ce fichier de configuration, vous pouvez changer le

visualvm_default_options="-J-client -J-Xms24m -J-Xmx256m

à (par exemple) 

visualvm_default_options="-J-client -J-Xms24m -J-Xmx2048m

0
Hardik Modha