すべてのガイド(例えばJNI runtime linkingは)私はlibjvm.so
に対する私のJNIライブラリをリンクすることをお勧めします。libjvm.so:リンクするかどうかを指定しますか?私が見てきたJNIへ
$ gcc -I${JAVA_HOME}/include -c -o test.o test.c
$ gcc -shared -o libtest.so test.o -L${JAVA_HOME}/jre/lib/i386/server -Wl,-rpath,${JAVA_HOME}/jre/lib/i386/server -ljvm
私のカスタムライブラリはC++で書かれ、C++ JNIのAPIを使用している場合は、私は明らかにすることができますおそらくので、私はコマンドラインではない言及-ljvm
を行う場合は、カスタムのネイティブライブラリがうまく動作し続け、それでも
00000690 W JNIEnv_::ThrowNew(_jclass*, char const*)
00000672 W JNIEnv_::FindClass(char const*)
:nm -C
出力に対応する弱いシンボルを参照してくださいはで自動的にロードされます。 Javaプロセス。
具体的にlibjvm.so
とリンクする必要がある場合は、となると教えてください。