0

C++で小さなJavaデバッガーを作成するためにJVMTIを使用しようとしています。私はここを読みました:http:
//java.sun.com/developer/technicalArticles/Programming/jvmti/
そのJVMは次のように定義されたエクスポートされたメソッドを呼び出す必要があります
JNIEXPORT jint JNICALL Agent_OnLoad(JavaVM *jvm, char *options, void *reserved)

しかし、Javaターゲットプログラムを起動しても、デバッガーを実行するとこのメソッドが呼び出されません。
これは、このJVMTIを開始する正しい方法ですか?Javaプログラムの起動時に自動的に呼び出されることになっていますか?

4

1 に答える 1

0

次のように、Javaプログラムの呼び出し中に「-agentlib」コマンドライン引数を指定すると、デバッグエージェントコードがロードされます。

$java -agentlib:jvmti_debugger javaSampleClass

それについてのもう少し最近の記事はここにあります

于 2011-12-19T19:51:08.863 に答える