Ich versuche, die WZwave-Bibliothek in meinem Maven-Projekt einzurichten. Ich folgte Anweisung auf der setup Seite (auch installiert die RXTX-Bibliothek wie in this Video beschrieben). Nach dem Ausführen der Anwendung bekomme ich folgende Fehlermeldung:Fehlende Klasse in JAR-Datei. NoClassDefFoundError Ausnahme zurückgegeben
Exception in thread "main" java.lang.NoClassDefFoundError:
io/netty/channel/rxtx/RxtxDeviceAddress
at asd.WZWaveTest.<init>(WZWaveTest.java:13)
at asd.WZWaveTest.main(WZWaveTest.java:27)
Caused by: java.lang.ClassNotFoundException:
io.netty.channel.rxtx.RxtxDeviceAddress
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 2 more
Wenn ich richtig verstanden hat, ist die netty-Transport-JAR-Datei der Definition der Klasse RxtxDeviceAddress fehlt.
Ich habe versucht, auf die neueste Version der JAR-Datei (4.0.36) zu aktualisieren, aber das Problem besteht fort.
Weiß jemand, was sonst könnte falsch sein?
EDIT1: My pom.xml ist das gleiche wie die von der Setup-Seite (oben verlinkten), mit einigen verschiedenen Eigenschaften (I den „Version“ Tag des netty-Transport dependeny aktualisiert, um zu sehen, wenn die Klasse existierte dort):
Ich versuche zu laufen, wenn von der Eclipse-IDE.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>asd</groupId>
<artifactId>asd</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>com.whizzosoftware</groupId>
<artifactId>wzwave</artifactId>
<version>0.0.3</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport</artifactId>
<version>4.0.36.Final</version>
<scope>runtime</scope>
</dependency>
</dependencies>
</project>
EDIT2: Es funktioniert. Wie @Darek herausfand, lag das Problem in der fehlenden Jar-Abhängigkeit. Ich habe netty-all.jar und ein paar andere hinzugefügt, und es fing an zu arbeiten. Vielen Dank.
@Darek: Wenn Sie Ihren Kommentar als Antwort schreiben, werde ich mich freuen, es zu akzeptieren.
Klasse Zeigen Sie uns Ihre 'pom.xml' Datei nach der Montage von Glas usw.? – Darek