Używam VisualVM z JDK 1.6.0_26 do profilowania aplikacji internetowej Java działającej pod Tomcat, ale VisualVM często mówi mi, że nie ma wystarczającej ilości pamięci, aby zrobić migawkę i aby użyć przełącznika -Xmx, aby zapewnić więcej pamięci dla Netbeans . Problem polega na tym, że używam VisualVM poza Netbeans, więc jak mogę dostarczyć argumenty JVM do jvisualvm.exe?
97
-J-Xms
i-J-Xmx
czy faktycznie są to prawidłowe nazwy opcji? Czy-J
przedrostek jest potrzebny, gdy są one określone w pliku konfiguracyjnym?-J-Xms24m
&,-J-Xmx256m
więc zakładam, że są to prawidłowe nazwy opcji. Prawdopodobnie mógłbyś wygooglować, jak sformatować visualvm.conf, aby uzyskać więcej informacji ...-J
prefiksu./usr/lib/jvm/java-6-sun/lib/visualvm/etc/visualvm.conf
.lub myślę, że to też działa:
jvisualvm.exe -J-Xmx512m
(lub ile potrzebujesz)-J w wierszu poleceń .exe dla ustawień jednorazowych lub plik .conf zanotowany w drugiej odpowiedzi na zmianę ustawień domyślnych
źródło
jvisualvm.exe -J-Xms256m -J-Xmx1024m
z wiersza polecenia i podczas sprawdzania procesu zauważyłem, że argumenty nie zostały zastosowane.-Xms24m -Xmx192m -Dsun.jvmstat.perdata.syncWaitMs=10000 -Xms256m -Xmx1024m
Zacząłem od
i zadziałało.
źródło
W systemie Mac możesz je skonfigurować, edytując ten plik.
/Applications/VisualVM.app/Contents/Resources/visualvm/etc/visualvm.conf
źródło
Dla Mac OSX 10.12+
Jeśli pobrałeś visualvm
dmg
z https://visualvm.github.io/download.html i przeniosłeś go doApplications
katalogu. Możesz znaleźć plik konfiguracyjnyvisualvm.conf
w lokalizacjiApplications/VisualVM.app/Contents/etc/visualvm.conf
. W tym pliku konfiguracyjnym możesz zmienićvisualvm_default_options="-J-client -J-Xms24m -J-Xmx256m
do (np.)
visualvm_default_options="-J-client -J-Xms24m -J-Xmx2048m
źródło