java - 引起:java.lang.NoClassDefFoundError: org/bridj/cpp/CPPObject

在这里,我编写了一些代码来使用 java 从 My 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.jar , slf4j-simple-1.7.2.jar,webcam-capture-0.3.12.jar 和 webcam-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

注:我的 IDE 是 Apache NetBeans IDE 12.4

回答1

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

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

好幸运

相似文章

随机推荐

最新文章