2
我試圖JBoss的個人資料如下:如何從IDEA JProfiler插件連接到無需啓動的JVM?
- 添加
-agentpath:C:\Progra~1\jprofiler8\bin\windows-x64\jprofilerti.dll
到standalone.bat
。請注意,未指定nowait
,因此VM將等待JProfiler GUI連接。 「 - >附加到JVM運行」
的問題是,「快速連接」窗口中沒有看到JBoss的JVM,不管我做什麼
standalone.bat
這裏是JBoss標準輸出顯示該JProfiler的準備:
Calling "C:\src\ss-master\middle\runtime\jboss-as-7.1.1.Final\bin\standalone.conf.bat"
===============================================================================
JBoss Bootstrap Environment
JBOSS_HOME: C:\src\ss-master\middle\runtime\jboss-as-7.1.1.Final
JAVA: C:\tools\java\bin\java
JAVA_OPTS: -XX:+TieredCompilation -agentpath:C:\Progra~1\jprofiler8\bin\windows-x64\jprofilerti.dll -Dprogram.name=standalone_jprofiler.bat -Xms256m -Xmx8192m -XX:NewRatio=6 -XX:
PermSize=128m -XX:MaxPermSize=256m -Xss512K -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.war
ning=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djboss.server.default.config=standalone.xml -Dorg.jboss.server.bootstrap.maxThreads=8 -agentlib:jdwp=transport=dt_socket,se
rver=y,suspend=n,address=5001
===============================================================================
JProfiler> Protocol version 41
JProfiler> Using JVMTI
JProfiler> JVMTI version 1.1 detected.
JProfiler> 64-bit library
JProfiler> Listening on port: 8849.
JProfiler> Instrumenting native methods.
JProfiler> Can retransform classes.
JProfiler> Can retransform any class.
JProfiler> Native library initialized
JProfiler> VM initialized
JProfiler> Waiting for a connection from the JProfiler GUI ...
下面是一些我嘗試過的事情:
- 從JProfiler的UI「快速連接」也沒有請參閱JBoss VM。
- 在
nowait
的啓動選項中,連接成功(甚至來自IDEA)。 - 沒有
nowait
,我只能從JProfiler GUI中的預定義會話連接。在此之後,我也可以從IDEA連接。
這最後一點是最有趣的。保存的會話有哪些附加信息可以檢測到「等待」的JProfiler代理?
下面是我用例的約束:
- 我要開始從IDEA的分析,以便跳轉到源代碼帶我去的想法。
- 我想介紹啓動階段,所以我買不起
nowait
。
感謝您的解釋。關於你的建議,我不想從IDE運行JBoss。我需要分析各種JBoss安裝,最簡單的方法就是連接到許多已安裝的JVM中的一個(就像你爲調試所做的那樣)。 –