【发布时间】:2016-02-22 16:27:41
【问题描述】:
我想在 maven 项目中使用OpenCV 代码,opencv-310.jar 创建并运行良好。
按照this page的方式调用本地jar文件,我安装jar
mvn install:install-file
-Dfile=/home/administrator/NetBeansProjects/OpenCV_Maven/opencv-310.jar
-DgroupId=localLibrary
-DartifactId=OpenCV -Dversion=3.1.0 -Dpackaging=jar
-DgeneratePom=true
并将POM 设为以下代码
<dependencies>
<dependency>
<groupId>localLibrary</groupId>
<artifactId>OpenCV</artifactId>
<version>3.1.0</version>
</dependency>
</dependencies>
然后运行Face detection application 示例代码。如下异常,发生在调用Core.NATIVE_LIBRARY_NAME的行,似乎找不到jar。
Exception in thread "main" java.lang.UnsatisfiedLinkError: no opencv_java310 in java.library.path
我不知道怎么解决,我用destop应用练习库时出现了同样的问题,但不能用同样的方法解决。(添加VM选项-Djava.library.path)
顺便说一句,我不使用同时使用opencv-310.jar 创建的libopencv_java310.so。我不确定是否需要,如果必须添加到 maven 项目中,请告诉我如何使用它,我从未使用过这种文件。
感谢您的帮助。
【问题讨论】:
-
“我不确定是否有必要”。那么你得到的运行时错误似乎表明它是。该 Java 库可能只是本机代码调用的入口点(通过 JNI),因此需要在
java.library.path中添加本机库。