Как предоставить аргументы JVM VisualVM?

Я использую VisualVM из JDK 1.6.0_26 для профилирования Java Webapp, работающего под Tomcat, но VisualVM часто говорит мне, что у него недостаточно памяти для создания моментального снимка и для использования переключателя -Xmx для обеспечения большего количества памяти Netbeans. Проблема в том, что я запускаю VisualVM за пределами Netbeans, поэтому как я могу предоставить аргументы JVM для jvisualvm.exe?

Ответ 1

Должна иметь возможность изменять настройки памяти в %JDK_HOME%\lib\visualvm\etc\visualvm.conf

Xms и Xmx находятся в строке default_options.

Ответ 2

или я думаю, что это тоже работает:

jvisualvm.exe -J-Xmx512m (или сколько вам потребуется)

-J в командной строке .exe для параметров onetime или файл .conf, указанный в другом ответе для изменения значений по умолчанию

Ответ 3

Я начал с

jvisualvm -J-Xms1024m -J-Xmx2048m

и он работал.

Ответ 4

В Mac вы можете настроить их, отредактировав этот файл.

/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"

Ответ 5

Для Mac OSX 10.12 +

Если вы загрузили visualvm dmg из https://visualvm.github.io/download.html и перенесли его в каталог Applications. Файл конфигурации visualvm.conf можно найти в разделе Applications/VisualVM.app/Contents/etc/visualvm.conf. В этом файле конфигурации вы можете изменить

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

до (например)

visualvm_default_options="-J-client -J-Xms24m -J-Xmx2048g