この 4 時間は、リモートで (つまり、Eclipse ではなく) 実行する必要がある Tomcat インスタンスで Eclipse TPTP メモリ プロファイリングをセットアップするのに費やしました。TPTP および Agent Controller のドキュメントによると、これは可能なはずです。
Web サイトの指示に従って、エージェント コントローラーと共に TPTP コンポーネント (4.6.0) を Eclipse (Galileo) ワークベンチにインストールしました。エージェントを有効にするために、Tomcat インスタンスを起動するコマンド ラインに次のオプションを追加しました。
-agentlib:JPIBootLoader=JPIAgent:server=enabled;HeapProf:allocsites=true
次のディレクトリを PATH の先頭に追加しました。
D:\dev\tools\ac\plugins\org.eclipse.tptp.javaprofiler
D:\dev\tools\ac\bin
Tomcat を起動しようとすると、一貫して次のエラー メッセージが表示されます。
ERROR: JDWP unable to get necessary JVMTI capabilities. ["debugInit.c",L279]
私は多くのグーグルを行いましたが、関連するものは何も見つかりませんでした。TPTP とさまざまなバージョンの Agent Controller を再インストールしてみました。
最終的に、問題は、「jpda」オプションを使用してTomcatを起動していたことであることが判明しました。これは、catalina.batが変換します
-Xdebug -Xrunjdwp:transport=.....
「jpda」コマンド引数を削除すると、JVMTI が機能し始めました。
SO、質問は次のとおりです。検索中に、JVMTI エージェントがデバッグと互換性がないことを示すものは何も見つかりませんでした。誰かが何が起こっているのか、なぜ JVMTI + JDWP が有効なセットアップではないのか説明できますか?