0
我使用https://github.com/patternconsulting/opencv包括OpenCV的 3.2.0在我行家的Java項目。行家java.lang.NoClassDefFoundError:NU /模式/ OpenCV的錯誤
,我面臨的問題是,當我使用mvn install
生成一個jar文件,然後運行jar文件java -jar app.jar
我得到以下錯誤:
Exception in thread "main" java.lang.NoClassDefFoundError: nu/pattern/OpenCV
at com.example.Application.<clinit>(Application.java:21)
Caused by: java.lang.ClassNotFoundException: nu.pattern.OpenCV
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)
下面
是我的pom.xml的提取物文件
<dependency>
<groupId>org.openpnp</groupId>
<artifactId>opencv</artifactId>
<version>3.2.0-1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<mainClass>com.example.Application</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
以下是我班的提取物具有主要方法:
public class Application {
static {
OpenCV.loadShared();
}
public Application() throws Exception {
// some code here
}
public static void main(String[] args) {
new Application();
}
任何想法可能會導致這種情況發生以及如何解決?
謝謝