「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > なぜ私のJNIプロジェクトは従属ライブラリを見つけることができないのですか?

なぜ私のJNIプロジェクトは従属ライブラリを見つけることができないのですか?

2025-02-26に投稿されました
ブラウズ:966

Why Can't My JNI Project Find Dependent Libraries?

に扱いません。エラー: "Java.lang.unsatisfiedLinkerror:c:... path ... \ mylib.dll:見つかりません依存ライブラリ。」このエラーは、JAVA仮想マシン(JVM)がJNIライブラリが必要とする共有ライブラリ(DLL)を見つけることができないことを示しています。 、次のソリューションを検討してください:

適切なライブラリパス:

を確認します従属ライブラリ(libsndfile-1.llなど)は、メインライブラリ(mylib.dll)と同じディレクトリまたはWindows Path環境変数にリストされているディレクトリにあります。 JVMは、必要な依存関係を見つけるためにこのライブラリパスに依存しています。ファイル。 Visual Studioコンパイラはメソッド名をmangleすることができるので、適切なリンカーフラグを指定して一貫した命名を生成してください。 .library.pathシステムプロパティは、従属ライブラリを含むディレクトリへ。これにより、デフォルトのライブラリ検索パスがオーバーライドされます。 Windowsで開発が行われた場合は、それに応じてターゲットプラットフォームを設定します。 JNI仕様。コマンド「Java -Xshowsettings:Properties -Version」を使用して、共有ライブラリ検索パスを識別することもできます。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3