私は JNA と Java を使用していますが、この質問はネイティブから非ネイティブへのブリッジに影響すると思います。
lib1.dylib に依存する Java アプリケーションがあり、lib1.dylib は lib2.dylib に依存しています。
Mac の .app ファイル内にすべてを配置したいと考えています。簡単に lib1.dylib を内部に配置し、java.classpath (または NativeLibrary.addSearchPath()) を設定して、lib1.dylib の場所を JVM に伝えることができます。問題は、lib1.dylib の依存関係も指定した場所にあることを伝える方法がわからないことです。その結果、lib1 は正常にロードされますが、オペレーティング システムのライブラリ パスにないため、lib2 が見つかりません。
この問題を克服する方法を知っている人はいますか? 多数の共有ライブラリを使用する大規模なプロジェクトでは、それがたくさん出てくるに違いないと思います。