Eclipse中的OpenCV 3.0.0 java.lang.UnsatifiedLinkError
我试图用OpenCV 3.0.0设置Eclipse(Neon版本),但遇到了一个问题。 当我加载图像时,代码如下:Eclipse中的OpenCV 3.0.0 java.lang.UnsatifiedLinkError,java,eclipse,ubuntu-14.04,opencv3.0,Java,Eclipse,Ubuntu 14.04,Opencv3.0,我试图用OpenCV 3.0.0设置Eclipse(Neon版本),但遇到了一个问题。 当我加载图像时,代码如下: Mat m = Imgcodecs.imread("newimage.jpg"); 将引发以下错误: Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.imgcodecs.Imgcodecs.imread_1(Ljava/lang/String;)J at org.opencv.im
Mat m = Imgcodecs.imread("newimage.jpg");
将引发以下错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.imgcodecs.Imgcodecs.imread_1(Ljava/lang/String;)J
at org.opencv.imgcodecs.Imgcodecs.imread_1(Native Method)
at org.opencv.imgcodecs.Imgcodecs.imread(Imgcodecs.java:82)
at TestOpenCVFeats.main(TestOpenCVFeats.java:39)
一切都是根据这个网站设置的
还添加了java.library.path的路径:
export LD_LIBRARY_PATH = $LD_LIBRARY_PATH:/usr/local/share/OpenCV/java
通过以下方式确认其存在:
java -XshowSettings:properties
和$PATH变量
还将此命令添加到JVM运行配置:
-Djava.library.path= "/usr/local/share/OpenCV/java"
还尝试了使用此代码行和不使用此代码行:
System.loadLibrary("libopencv_java300");
路径/usr/local/share/OpenCV/java上文件的权限为:
-rwxr-xr-x 1 root root 831809 Srp 1 2015 libopencv_java300.so
-rwxr-xr-x 1 root root 300815 Srp 1 2015 opencv-300.jar
我尝试了所有可能的组合,仍然得到相同的错误。
我不知道我还能做些什么来让这一切顺利进行。
OpenCV在执行C++(Eclipse Luna)或Python代码时工作正常。
我的操作系统是Ubuntu 14.04
非常感谢您的帮助。好的,我们找到了解决方案。 这行代码需要添加到main中:
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
好吧,找到了解决办法。 这行代码需要添加到main中:
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
如果要使用eclipse在windows中配置OpenCV,请执行以下步骤:
- 右键单击项目
- 选择构建路径
- 单击配置生成路径
- 单击“库”
- 添加外部罐子
- 打开OpenCV提取文件夹
- 开放构建/java/
- 选择opencv-2411.jar并打开
- 单击应用
- 单击“确定”
您可以通过以下方式使用OpenCv本机库:
- 将本机库添加到opencv jar
- 使用System.load()方法指向java中的本机库,但请确保必须指定本机库路径
将本机库添加到opencv jar
- 右键单击项目
- 选择构建路径
- 单击配置生成路径
- 单击“库”
- 展开opencvjar
- 单击本机库
- 单击右侧面板中的“编辑”按钮
- 单击外部折叠
- 打开OpenCV提取文件夹
- 打开build/java/x64。(如果您的操作系统是64位的,请选择x64或x86)
- 单击“确定”
- 单击应用
- 单击“确定”
指向java类中的本机库
- 将“opencv_java2411.dll”的位置从opencv\build\java\x64传递到System.load(“opencv dll的路径”)
- 右键单击项目
- 选择构建路径
- 单击配置生成路径
- 单击“库”
- 添加外部罐子
- 打开OpenCV提取文件夹
- 开放构建/java/
- 选择opencv-2411.jar并打开
- 单击应用
- 单击“确定”
您可以通过以下方式使用OpenCv本机库:
- 将本机库添加到opencv jar
- 使用System.load()方法指向java中的本机库,但请确保必须指定本机库路径
将本机库添加到opencv jar
- 右键单击项目
- 选择构建路径
- 单击配置生成路径
- 单击“库”
- 展开opencvjar
- 单击本机库
- 单击右侧面板中的“编辑”按钮
- 单击外部折叠
- 打开OpenCV提取文件夹
- 打开build/java/x64。(如果您的操作系统是64位的,请选择x64或x86)
- 单击“确定”
- 单击应用
- 单击“确定”
指向java类中的本机库
- 将“opencv_java2411.dll”的位置从opencv\build\java\x64传递到System.load(“opencv dll的路径”)