[英]Exporting to Runnable jar with extra native code libraries in eclipse
我无法将我的java项目从eclipse导出为jar可执行文件。 我的java项目使用外部库(称为jri)。 我已经导出了jri.jar文件并在eclipse中为其本机库设置了库路径,并且它在eclipse中的开发中运行良好。 但是,当我将其导出为可执行jar文件时,我收到以下错误:
Cannot find JRI native library!
Please make sure that the JRI native library is in a directory listed in java.library.path.
我把一个名为lib的文件夹放在与我的项目jar相同的目录中; 这个lib文件夹包含jri的本机库。 jri的本机库不在一个文件中,而是在一个文件夹中。 这与我在eclipse中的设置相同。
我在eclipse中导出项目的方式是
Export...
Java > Runnable JAR file
Copy required libraries into a sub folder next to the generated Jar
Finish
我的文件夹是这样组织的
folder project
project.jar
project_lib
jri.jar
jri native library folder
我的project.jar的MANIFEST.MF是:
Manifest-Version: 1.0
Class-Path: . project_lib/jri.jar
Main-Class: index
我想要实现的是给另一个人一个文件夹,包括project.jar和其他所需的东西,这样她/他就可以运行它而无需安装任何其他东西。 非常感谢
添加包含以下内容的脚本:
#!/bin/bash
java -Djava.library.path=project_lib/native/ -jar project_lib/jri.jar
我以这种方式导出一些java项目。
您可以将库放在 jar中:
出口...
Java> Runnable JAR文件
将所需的库打包到生成的Jar中
完
我总是以这种方式出口。 我不知道它是否适用于您的情况,但值得一试。
编辑:
看到这些链接:
我的猜测是,这与LD_LIBRARY_PATH没有正确设置有关。 或者它正在搜索的文件不在列出的路径中。
你知道我有类似的问题
Could not extract native JNI library.
以上所有建议都无法帮助我。 我无法停止并使用follow命令启动gradle deamon:
gradle --stop
我看到gradle deamon仍未在我的进程中停止。 这就是为什么我在我的过程中杀了它,一切都会好的:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.