我正在创建一个简单的Alljoyn java应用程序来发送和响应一些信号。当我在Eclipse中运行代码(在Win7上)它运行正常。但是,当我将其导出为可运行的jar文件并尝试运行时,我收到以下错误
Exception in thread "main" java.lang.UnsatisfiedLinkError: no alljoyn_java in java.library.path
调用执行以下代码时会触发异常:
static { System.loadLibrary("alljoyn_java");}
我已将项目的构建路径配置为使用外部jar alljoyn_java,并将该库的Native库位置设置为alljoyn_java.dll文件的父目录。
答案 0 :(得分:0)
您必须将文件alljoyn_java.dll
,alljoyn_java.lib
和alljoyn_java.exp
放在jar文件的同一目录中。
然后,使用以下命令运行jar:
java -jar -Djava.library.path=. [your-jar-file.jar]
答案 1 :(得分:0)
JVM在 java.library.path 中指定的路径(如上面的答案中所述)和/或在环境变量 LD_LIBRARY_PATH 中指定的路径中查找本机库。使用上面注释中提到的命令或将包含库的目录路径添加到环境变量LD_LIBRARY_PATH。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<<path_of_dir_containing_lib>>
java -jar <<your_jar_file>>
答案 2 :(得分:0)
所以我最终做的是下载jarsplice并使用它来添加本机库之后我从Eclipse导出项目为.jar