我想在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
)
顺便说一句,我不会同时使用libopencv_java310.so
创建的opencv-310.jar
。我不确定是否有必要,如果必须添加到maven项目,请告诉我如何使用它,我从来没有使用过这种文件。
感谢您的帮助。
答案 0 :(得分:0)
正如@Tome所说,本地图书馆导致的问题错过了。
所以我喜欢,
public static void main(String[] args) {
System.out.println("Hello, OpenCV");
// Load the native library.
//System.loadLibrary(Core.NATIVE_LIBRARY_NAME); instead by below code
String path = "/home/administrator/OpenCV_jar/libopencv_java310.so";
System.load(path);
new DetectFaceDemo().run();
}