5

スレッド「メイン」での例外 java.lang.UnsatisfiedLinkError: java.lang.Runtime.loadLibrary0(Runtime.java: 845) com.jogamp.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:102) で java.lang.System.loadLibrary(System.java:1084) com.jogamp.gluegen.runtime.NativeLibLoader.access$000( NativeLibLoader.java:51) の com.jogamp.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:70) の java.security.AccessController.doPrivileged(ネイティブ メソッド) の com.jogamp.gluegen.runtime.NativeLibLoader.loadGlueGenRT (NativeLibLoader.java:68) com.jogamp.common.jvm.JVMUtil.(JVMUtil.java:56) で javax.media.opengl.GLProfile.(GLProfile.java:1051) で HelloWorld.main(HelloWorld.java: 14)

そのため、チュートリアルの JOGL ファイルを実行しようとするたびに、この素​​晴らしい例外が発生します。私は必死にできる限りのことをしてきました。以下を含む、jogl および gluegen の可能なすべてのライブラリを追加します。

jogl.jar jogl.all.jar jogl ネイティブ グルーゲン ネイティブ macosx 用グルーゲンとジョグル ネイティブ

すべて、そしてgluegenライブラリは明らかにありますが、それはありませんと言っています。-.- jnilib ファイルについてどこかで読んで、それらを jar ファイルのあるフォルダーに入れようとしましたが、まだ運がありません。

ちなみにEclipseを使っています。

4

1 に答える 1

0

OSは、アプリケーションを実行しようとするときに、gluegen-rtネイティブライブラリの場所を通知する必要があります。これは、Eclipseで「実行構成」を編集して適切な環境変数を設定することで実行できます。私はLinuxで開発していますが、私にとっての手順は次のとおりです。

  • プロジェクトエクスプローラーでメインクラスを右クリックします
  • [実行]->[構成の実行...]を選択します。
  • [環境]タブを選択します
  • 「新規...」をクリックします
  • 名前:LD_LIBRARY_PATHと値:を入力します/usr/lib64/jogl:/usr/lib64/gluegen
  • 「OK」、「適用」、「実行」をクリックします

Mac OSXでは、おそらく、DYLD_FALLBACK_LIBRARY_PATHまたはDYLD_LIBRARY_PATHの代わりにを使用する必要LD_LIBRARY_PATHがあり、JOGLライブラリとGluegenライブラリの場所は異なります。これらはネイティブライブラリを含むディレクトリで、名前.soはLinuxで終わり、 .jnilibMacOSXで終わると思います。

于 2013-02-13T10:52:07.393 に答える