当前位置: 首页 > 知识库问答 >
问题:

使用Javacv时出现NoClassDefFoundError

姬魁
2023-03-14

我试图使用JavaCV从我的webcamera.but捕获快照,当我运行下面的代码时,我得到了一个执行。它说找不到com/googlecode/javacpp/Pointer类。我能做些什么来解决这个错误...

 package camera;

/**
 *
 * @author asankad
 */
import static com.googlecode.javacv.cpp.opencv_core.cvFlip;
import static com.googlecode.javacv.cpp.opencv_highgui.cvSaveImage;

import com.googlecode.javacv.CanvasFrame;
import com.googlecode.javacv.FrameGrabber;
import com.googlecode.javacv.VideoInputFrameGrabber;
import com.googlecode.javacv.cpp.opencv_core.IplImage;

public class GrabberShow implements Runnable {
    //final int INTERVAL=1000;///you may use interval
    IplImage image;
    CanvasFrame canvas = new CanvasFrame("Web Cam");
    public GrabberShow() {
        canvas.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
    }
    @Override
    public void run() {
        FrameGrabber grabber = new VideoInputFrameGrabber(0); 
        int i=0;
        try {
            grabber.start();
            IplImage img;
            while (true) {
                img = grabber.grab();
                if (img != null) {
                    cvFlip(img, img, 1);// l-r = 90_degrees_steps_anti_clockwise
                    cvSaveImage((i++)+"-capture.jpg", img);
                    // show image on window
                    canvas.showImage(img);
                }
                 //Thread.sleep(INTERVAL);
            }
        } catch (Exception e) {
        }
    }
}

例外

Exception in thread "main" java.lang.NoClassDefFoundError: com/googlecode/javacpp/Pointer
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at camera.Camera.main(Camera.java:20)
Caused by: java.lang.ClassNotFoundException: com.googlecode.javacpp.Pointer
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 13 more
Java Result: 1

共有1个答案

史骏
2023-03-14

在类路径中添加javacpp jar或放置在lib文件夹中

 类似资料:
  • 我正在尝试使用JavaCV实现一个简单的人脸识别代码。我有一个错误,但不知道为什么。

  • JavaCV 提供了在计算机视觉领域的封装库,包括:OpenCV、ARToolKitPlus、libdc1394 2.x 、PGR FlyCapture和FFmpeg。此外,该工具可以很容易地使用Java平台的功能。 JavaCV 还带有硬件加速的全屏幕图像显示(CanvasFrame),易于在多个内核中执行并行代码(并行),用户友好的几何和色彩的相机和投影仪校准(GeometricCalibra

  • 下面的电话(我将敏感信息替换为 产生以下错误: Flyway输出:Boxfuse的Flyway 4.2.0 异常在线程"main"java.lang.NoClassDefFoundError: oracle/dms/控制台/DMS控制台在oracle.jdbc.driver.DMSFactory。(DMSFactory.java:44)在oracle.jdbc.driver.物理onnection

  • 本文向大家介绍Javacv使用ffmpeg实现音视频同步播放,包括了Javacv使用ffmpeg实现音视频同步播放的使用技巧和注意事项,需要的朋友参考一下 最近用javaCV的ffmpeg包的FFmpegFrameGrabber帧捕捉器对捕捉到的音频帧和视频帧做了同步的播放。采用的同步方法是视频向音频同步。 程序和源码 具体的思路如下: (1)首先介绍ffmpeg是如何捕捉视频文件的图像和声音的

  • 下面是代码片段: 如果有人告诉我出了什么事,我将不胜感激。提前感谢您的帮助。

  • 问题内容: 我正在尝试从中删除一些元素,但即使是最简单的示例,如本答案或本示例中的示例,也将无法使用。 使用法线代替a 并没有帮助。我想念什么?我正在使用Java 7。 问题答案: 返回由原始数组支持的列表。您对列表所做的更改也将反映在您传入的数组中。由于您无法向数组添加或删除元素,因此对列表进行这种创建也是不可能的,这就是调用失败的原因。如果要能够动态添加和删除元素,则需要使用(,等)的不同实现