私はJavaとEclipseを初めて使用します。私のプロジェクトでは、ネイティブdllに依存するサードパーティのjarを使用しています。これらのdllをbinフォルダーの下に配置しましたが、これはeclipse内で正常に機能します。
「FatJarExporter」Eclipseプラグインを使用 して、プロジェクトを実行可能jarとしてエクスポートしました。JDK jarユーティリティを使用すると、このdllがjarのルートに存在していても、 jarがfatjarの外部のターゲットでjavafxdllを探していることに気付きました。
jarマニフェストを変更してjar内からこれらのdllを選択するようにするにはどうすればよいですか、またはEclipseからjarをエクスポートするときにパスを設定する必要があります。
glass.dllを追加しようとしました。Bundle-NativeCodeのprocessor=x86; osname = win32ですが、機能しませんでした。
マニフェストファイルは次のようになります。
Manifest-Version: 1.0
Created-By: Fat Jar Eclipse Plug-In
Main-Class: com.bosch.mvci.ui.UI
Name: com/sun/jna/
Implementation-Title: com.sun.jna
Implementation-Vendor: JNA Development Team
Implementation-Version: 3.4.1 (b671)
Specification-Title: Java Native Access (JNA)
Specification-Vendor: JNA Development Team
Specification-Version: 3
Bundle-ManifestVersion: 2
Bundle-Name: jna
Bundle-Description: JNA Library
Bundle-SymbolicName: com.sun.jna
Bundle-Version: 3
Bundle-RequiredExecutionEnvironment: J2SE-1.4
Bundle-Vendor: JNA Development Team
Bundle-ActivationPolicy: lazy
Export-Package: com.sun.jna,com.sun.jna.ptr,com.sun.jna.win32,javafx
Bundle-NativeCode: com/sun/jna/win32-x86/jnidispatch.dll; processor=x8
6;osname=win32, com/sun/jna/win32-amd64/jnidispatch.dll; processor=x8
6-64;osname=win32, com/sun/jna/w32ce-arm/jnidispatch.dll; processor=a
rm;osname=wince, com/sun/jna/sunos-x86/libjnidispatch.so; processor=
x86;osname=sunos, com/sun/jna/sunos-amd64/libjnidispatch.so; processo
r=x86-64;osname=sunos, com/sun/jna/sunos-sparc/libjnidispatch.so; pro
cessor=sparc;osname=sunos, com/sun/jna/sunos-sparcv9/libjnidispatch.s
o; processor=sparcv9;osname=sunos, com/sun/jna/aix-ppc/libjnidispatc
h.a; processor=ppc;osname=aix, com/sun/jna/aix-ppc64/libjnidispatch.a
; processor=ppc64;osname=aix, com/sun/jna/linux-ppc/libjnidispatch.s
o; processor=ppc;osname=linux, com/sun/jna/linux-ppc64/libjnidispatch
.so; processor=ppc64;osname=linux, com/sun/jna/linux-i386/libjnidispa
tch.so; processor=x86;osname=linux, com/sun/jna/linux-amd64/libjnidis
patch.so; processor=x86-64;osname=linux, com/sun/jna/linux-arm/libjni
dispatch.so; processor=arm;osname=linux, com/sun/jna/linux-ia64/libjn
idispatch.so; processor=ia64;osname=linux, com/sun/jna/openbsd-i386/
libjnidispatch.so; processor=x86;osname=openbsd, com/sun/jna/freebsd-
i386/libjnidispatch.so; processor=x86;osname=freebsd, com/sun/jna/fre
ebsd-amd64/libjnidispatch.so; processor=x86-64;osname=freebsd, com/s
un/jna/darwin/libjnidispatch.jnilib; osname=macos,glass.dll; processo
r=x86;osname=win32,javafx-font.dll; processor=x86;osname=win32,