例: 2 つの共有オブジェクトがあります (.dll にも同じことが当てはまります)。最初の共有オブジェクトはサードパーティ ライブラリからのもので、libA.so と呼びます。この一部を JNI でラップし、独自のライブラリ libB.so を作成しました。現在、libB は libA に依存しています。
Webstarting の場合、両方のライブラリが webstart 作業領域に配置されます。私の Java コードは libB をロードしようとします。この時点で、システム ローダーは、システム ライブラリ パスにない libA をロードしようとします (java.library.path は役に立ちません)。最終的な結果として、libB には満たされていないリンクがあり、使用できません。
libB の前に libA をロードしようとしましたが、それでもうまくいきません。OSが私のためにそのロードをしたいようです。静的にコンパイルする以外に、これを機能させる方法はありますか?