Caused by: java.lang.NoClassDefFoundError: org/bridj/cpp/CPP



在这里,我写了一些代码来使用java从我的Pc cam捕获图像。下面是代码:

Random rnd = new Random();
int number = rnd.nextInt(999999999);
Webcam webcam = Webcam.getDefault();
webcam.open();
String filename = "";
filename = number + "_" + ".jpg";
ImageIO.write(webcam.getImage(), "JPG", new File("src\esprit\com\logo\" + filename));
pic = filename;
System.out.println(filename);
webcam.close();

并且我添加了slf4j-api-1.7.2.jarslf4j-simple-1.7.2.jarwebcam-capture-0.3.12.jarwebcam-capture-driver-v4l4j-0.3.11 . sources.jar任何需要的,但是当运行应用程序时,图像没有得到,引发异常。

下面是例外:

Caused by: com.github.sarxos.webcam.WebcamException: Cannot execute task
at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.process(WebcamProcessor.java:72)
at com.github.sarxos.webcam.WebcamProcessor.process(WebcamProcessor.java:140)
at com.github.sarxos.webcam.WebcamTask.process(WebcamTask.java:46)
at com.github.sarxos.webcam.ds.buildin.WebcamDefaultDriver$WebcamNewGrabberTask.newGrabber(WebcamDefaultDriver.java:45)
at com.github.sarxos.webcam.ds.buildin.WebcamDefaultDriver.getDevices(WebcamDefaultDriver.java:117)
at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:36)
at com.github.sarxos.webcam.WebcamDiscoveryService$WebcamsDiscovery.call(WebcamDiscoveryService.java:26)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
... 1 more
Caused by: java.lang.NoClassDefFoundError: org/bridj/cpp/CPPObject
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.github.sarxos.webcam.ds.buildin.WebcamDefaultDriver$WebcamNewGrabberTask.handle(WebcamDefaultDriver.java:55)
at com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run(WebcamProcessor.java:81)
... 3 more
Caused by: java.lang.ClassNotFoundException: org.bridj.cpp.CPPObject
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 17 more

N。B我的IDE是Apache NetBeans IDE 12.4

此错误是由jar意外引起的,请参阅https://github.com/sarxos/webcam-capture/issues/248

你只需要添加这个bridj jar,你可以下载它http://www.java2s.com/Code/Jar/b/Downloadbridj062jar.htm

好幸运

最新更新