" maven install"之后缺少Java类,在IDE中运行应用程序时有效

时间:2018-05-01 13:36:56

标签: java maven jar javacv

我在尝试从终端运行我的应用程序时遇到此错误(使用maven install将其编译到jar后):

Exception in thread "main" java.lang.NoClassDefFoundError: org/bytedeco/javacv/OpenCVFrameGrabber
    at org.wcapture.server.WCapture.captureFrame(WCapture.java:17)
    at org.wcapture.server.App.main(App.java:17)
Caused by: java.lang.ClassNotFoundException: org.bytedeco.javacv.OpenCVFrameGrabber
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    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)
    ... 2 more

但是,在Eclipse中运行它时,它可以正常工作。

在将应用程序编译到jar时,似乎maven没有包含依赖项。

我很感激任何帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

bytedeco丢失,因此您应该在pom.xml中添加org.bytedeco依赖项

<dependency>
    <groupId>org.bytedeco</groupId>
    <artifactId>javacv-platform</artifactId>
    <version>1.4.1</version>
  </dependency>