I need to use JavaCV on my Raspberry Pi to take pictures, but my development environment is Windows.
The maven dependencies I introduced are:
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv-platform</artifactId>
<version>1.5.8</version>
</dependency>
The code snippet is as follows:
try (FrameGrabber grabber = new OpenCVFrameGrabber(0);
OpenCVFrameConverter.ToIplImage converter = new OpenCVFrameConverter.ToIplImage()){
grabber.start();
for (int i = 0; i < 10; i++) {
Frame frame = grabber.grab();
IplImage img = converter.convert(frame);
opencv_imgcodecs.cvSaveImage(System.currentTimeMillis() + ".jpg", img);
}
} catch (FrameGrabber.Exception e) {
throw new RuntimeException(e);
}
This works fine on Windows, but when I use mvn package
to package it and run it on Raspberry Pi, I get the java.lang.UnsatisfiedLinkError: no jniopenblas_nolapack in java.library.path: /usr/java/ packages/lib:/lib:/usr/lib
error。
The full error is as follows:
java.lang.UnsatisfiedLinkError: no jniopenblas_nolapack in java.library.path: /usr/java/packages/lib:/lib:/usr/lib
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2429) ~[na:na]
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818) ~[na:na]
at java.base/java.lang.System.loadLibrary(System.java:1989) ~[na:na]
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:1825) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacpp.Loader.load(Loader.java:1416) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacpp.Loader.load(Loader.java:1227) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacpp.Loader.load(Loader.java:1203) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.openblas.global.openblas_nolapack.<clinit>(openblas_nolapack.java:12) ~[openblas-0.3.21-1.5.8.jar!/:0.3.21-1.5.8]
at java.base/java.lang.Class.forName0(Native Method) ~[na:na]
at java.base/java.lang.Class.forName(Class.java:467) ~[na:na]
at org.bytedeco.javacpp.Loader.load(Loader.java:1282) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacpp.Loader.load(Loader.java:1227) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacpp.Loader.load(Loader.java:1219) ~[javacpp-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacv.OpenCVFrameConverter.<clinit>(OpenCVFrameConverter.java:43) ~[javacv-1.5.8.jar!/:1.5.8]
at org.bytedeco.javacv.OpenCVFrameGrabber.<init>(OpenCVFrameGrabber.java:95) ~[javacv-1.5.8.jar!/:1.5.8]
at com.axon.camera.StartService.run(StartService.java:32) ~[classes!/:0.0.1-SNAPSHOT]
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:760) ~[spring-boot-3.0.5.jar!/:3.0.5]
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:750) ~[spring-boot-3.0.5.jar!/:3.0.5]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:317) ~[spring-boot-3.0.5.jar!/:3.0.5]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1304) ~[spring-boot-3.0.5.jar!/:3.0.5]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1293) ~[spring-boot-3.0.5.jar!/:3.0.5]
at com.axon.camera.CameraApplication.main(CameraApplication.java:13) ~[classes!/:0.0.1-SNAPSHOT]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) ~[camera.jar:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:95) ~[camera.jar:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) ~[camera.jar:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:65) ~[camera.jar:0.0.1-SNAPSHOT]
Caused by: java.lang.UnsatisfiedLinkError: Could not find jniopenblas_nolapack in class, module, and library paths.
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:1792) ~[javacpp-1.5.8.jar!/:1.5.8]
... 26 common frames omitted
Is there a dependent library missing?
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4