I want to use some functionality from nonfree library so I added javacv to my maven project and I have installed opencv_contrib package.
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>1.1</version>
</dependency>
As a result I have opencv_xfeatures2d.class as a part of opencv-3.0.0-1.1.jar library. I have following import:
import static org.bytedeco.javacpp.opencv_xfeatures2d.*;
in my project. The library is added properly because following
SURF surf = new SURF();
line (ctrl + left mouse button) it redirects me to proper function inside opencv_xfeatures2d file. But when I try to compile project I get following error:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniopencv_xfeatures2d in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864) at java.lang.Runtime.loadLibrary0(Runtime.java:870) at java.lang.System.loadLibrary(System.java:1122) at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:597) at org.bytedeco.javacpp.Loader.load(Loader.java:438) at org.bytedeco.javacpp.Loader.load(Loader.java:381) at org.bytedeco.javacpp.opencv_xfeatures2d.(opencv_xfeatures2d.java:19) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:348) at org.bytedeco.javacpp.Loader.load(Loader.java:413) at org.bytedeco.javacpp.Loader.load(Loader.java:381) at org.bytedeco.javacpp.opencv_xfeatures2d$SURF.(opencv_xfeatures2d.java:489) at mypr.rec.Clsm.Cmpr(Clsm.java:18) at mypr.mn.Main.main(Main.java:21) Caused by: java.lang.UnsatisfiedLinkError: /tmp/javacpp8449996504597/libjniopencv_xfeatures2d.so: /usr/local/lib/libopencv_calib3d.so.3.0: undefined symbol: ippicvJumpIndexForMergedLibs at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938) at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1821) at java.lang.Runtime.load0(Runtime.java:809) at java.lang.System.load(System.java:1086) at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:580) ... 10 more
The strange thing is that it says about jniopencv_xfeatures2d instead of opencv_xfeatures2d. What am I doing wrong?