JNIライブラリを含むJavaアプリケーションでRXTXを使用しています。.jniファイルを。に配置しました/Libray/Java/Extensions
。通常の方法でアプリケーションを手動で起動すると、java -jar /path/to/app.jar
すべてが正常に機能します。ただし、NetbeansまたはAntを介して起動しようとすると、次のように失敗します。
[java] java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/librxtxSerial.jnilib: no suitable image found. Did find: /Library/Java/Extensions/librxtxSerial.jnilib: no matching architecture in universal wrapper thrown while loading gnu.io.RXTXCommDriver [java] Exception in thread "main" java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/librxtxSerial.jnilib: no suitable image found. Did find: /Library/Java/Extensions/librxtxSerial.jnilib: no matching architecture in universal wrapper [java] at java.lang.ClassLoader$NativeLibrary.load(Native Method) [java] at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1823) [java] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1738) [java] at java.lang.Runtime.loadLibrary0(Runtime.java:823) [java] at java.lang.System.loadLibrary(System.java:1045) [java] at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83)
.jniを別の場所に移動し、.jniを使用してJVMをポイントした場合のアナログ動作-Djava.library.path
。手動で動作しますが、Antでは失敗します。
Mac OSX10.6.4を実行しているJava1.664ビット、Ant 1.7.1、RXTX 2.1-7r2(安定版)を使用しています