Can';不要让OpenCV使用Java+;Maven+;IntelliJ

Can';不要让OpenCV使用Java+;Maven+;IntelliJ,java,maven,opencv,intellij-idea,maven-3,Java,Maven,Opencv,Intellij Idea,Maven 3,我见过很多人问我类似的问题,但他们的解决方案对我不起作用。以下是我得到的: 我下载了最新的OpenCV for Windows(2.4.9)。我将其解压缩到C:\opencv-249 然后,我在IntelliJ中创建了一个新的Maven 3项目。这很好,我可以运行编译/包目标等。我可以执行和调试我的程序。这一切都很好 接下来,我尝试将OpenCV拉入我的测试应用程序,最终得到以下代码: package com.foo.OpenCVTest; import org.opencv.core.Cor

我见过很多人问我类似的问题,但他们的解决方案对我不起作用。以下是我得到的:

我下载了最新的OpenCV for Windows(2.4.9)。我将其解压缩到C:\opencv-249

然后,我在IntelliJ中创建了一个新的Maven 3项目。这很好,我可以运行编译/包目标等。我可以执行和调试我的程序。这一切都很好

接下来,我尝试将OpenCV拉入我的测试应用程序,最终得到以下代码:

package com.foo.OpenCVTest;

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.CvType;

/**
 * Created by rick on 5/7/2014.
 */
public class RobotCntrl {
    static{ System.loadLibrary(Core.NATIVE_LIBRARY_NAME); }

    static public void main(String args[]) {
        System.out.println("In main!");
        System.out.println("Core Lib: " + Core.NATIVE_LIBRARY_NAME);

        Mat m  = Mat.eye(3, 3, CvType.CV_8UC1);
        System.out.println("m = " + m.dump());
    }
}
然后,我将本地OpenCV添加到pom.xml中:

<dependency>
    <groupId>org.opencv</groupId>
    <artifactId>opencv</artifactId>
    <version>2.4.9</version>
    <systemPath>${java.home}/../../../../opencv-249/build/java/opencv-249.jar</systemPath>
    <scope>system</scope>
</dependency>
它抱怨找不到底层的n_eye()本机函数:

In main!
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_eye(III)J
Core Lib: opencv_java249
    at org.opencv.core.Mat.n_eye(Native Method)
    at org.opencv.core.Mat.eye(Mat.java:1467)
    at com.aether.Robots.RobotCntrl.main(RobotCntrl.java:25)

Process finished with exit code 1
我现在不知所措。它正在加载包装器库,但无法调用依赖函数。对于前面关于类似问题的问题,当人们更新java.library.path变量时,问题往往会得到解决,但我的问题似乎是正确的:

-Djava.library.path=C:\opencv-249\build\x64\vc10\bin;C:\opencv-249\build\java\x64

或者人们忘了调用System.loadLibrary(),但这个调用对我来说是成功的(据我所知)


有什么想法吗?

System.out.println(System.getProperty(“java.vm.name”))的输出是什么?java.vm.name==java HotSpot(TM)64位服务器VMIt已经有很长时间了,但是您还记得您是如何解决这个问题的吗?
In main!
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_eye(III)J
Core Lib: opencv_java249
    at org.opencv.core.Mat.n_eye(Native Method)
    at org.opencv.core.Mat.eye(Mat.java:1467)
    at com.aether.Robots.RobotCntrl.main(RobotCntrl.java:25)

Process finished with exit code 1