我试图在我的maven项目中设置WZwave库。我按照setup页面上的说明操作(也按this视频中所述安装了RXTX库)。运行应用程序后,我收到以下错误:
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
如果我理解正确,netty-transport jar文件缺少类RxtxDeviceAddress的定义。
我尝试更新到最新版本的jar文件(4.0.36),但问题仍然存在。
有谁知道,还有什么可能是错的?
EDIT1 :我的pom.xml与设置页面(上面链接的)相同,带有一些不同的属性(我更新了&#34;版本&#34;标签netty-transport依旧看,如果班级存在那里):
我试图从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:它正在运作。正如@Darek指出的那样,问题在于缺少jar依赖性。我添加了netty-all.jar和其他几个,它开始工作了。谢谢。