我用 swing、maven 和一些 native 库开发了一个项目。现在我在从 Maven 包生成 jar 后从 java 调用 SO 时遇到问题。我将其包含在 POM.xml 中。它将该文件包含在 jar 中。但它不会链接两者。
我在执行 jar 时遇到错误,例如 “线程“main”java.lang.UnsatisfiedLinkError中出现异常:java.library.path中没有项目”
<resources>
<resource>
<filtering>false</filtering>
<directory>${project.basedir}/lib</directory>
<includes>
<include>my.so</include>
<include>cv2.so</include>
</includes>
</resource>
</resources>
还想添加库文件夹并将其导出到jar中。有什么办法可以做到吗?
最佳答案
您的 native 库路径不适合您的程序运行。请参阅Call c function from Java
在执行程序之前使用-Djava.library.path=/path/to/libs
设置路径。
使用System.loadLibrary("HelloWorld")
在运行时设置路径
请再次查看我发布的链接。
关于java - 使用maven打包时如何调用SO原生库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47183822/