我使用 Opencv 3.1 Java 库制作了 JavaFX 项目。
问题是我的项目从 IDE 运行完全完美,但是当我尝试.jar
从dist
文件夹运行文件时,它会引发不满意的链接错误。
我已经搜索过这个问题并找到了很多答案,但没有一个能解决我的问题。我认为这些解决方案可能是针对旧版本的。
我的主要方法如下:-
public static void main(String[] args) {
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
launch(args);
}
我还正确设置了库路径:
并且在指定位置也有.dll 文件
如果我从 IDE 运行,该应用程序将完全按预期运行!
PS:我也尝试将项目放在 Eclipse 中并尝试创建 jar,但同样的事情发生了,它在 IDE 中运行,但在我运行 jar 时没有
错误详情 :
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:389)
at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:328)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at sun.launcher.LauncherHelper$FXHelper.main(Unknown Source)
Caused by: java.lang.UnsatisfiedLinkError: no opencv_java310 in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.Rein.rteapp.MainApp.main(MainApp.java:129)