根据我试图在 ANT 项目中使用的 bluecove 库,我遇到了一个大问题。
我的项目是一个从不同代理接收消息的平台,例如 TCP 代理、SunSpot 代理(使用 UDP),现在我正在尝试设置蓝牙代理。
为此需要 bluecove 库,但会导致与我正在实现的 UDP 类中使用的 javax.microedition.io 冲突。
我想这是一个库冲突,我试图将 bluecove-2.1.1 jar 放入 jdk1.6_xx/jre/lib/ext 但这会在 UDP 类中引发异常:
Error checking for shared basestation: javax.microedition.io.ConnectionNotFoundException: radiogram
javax.microedition.io.ConnectionNotFoundException: udp
javax.microedition.io.ConnectionNotFoundException: udp
at com.intel.bluetooth.MicroeditionConnector.openImpl(MicroeditionConnector.java:185)
at com.intel.bluetooth.MicroeditionConnector.open(MicroeditionConnector.java:162)
at javax.microedition.io.Connector.open(Connector.java:83)
at org.sunspotworld.SunSpotListener.run(SunSpotListener.java:48)
但是,如果我从 bluecove2.1.1 jar 的内容中删除 javax/microedition 文件夹,则抛出的错误完全不同:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/microedition/io/Connection
Exception in thread "main" java.lang.NoClassDefFoundError: javax/microedition/io/Connection
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at com.intel.bluetooth.Utils.class$(Utils.java:44)
at com.intel.bluetooth.Utils.<clinit>(Utils.java:44)
at javax.bluetooth.UUID.<init>(UUID.java:224)
at org.sunspotworld.BTListener.<clinit>(BTListener.java:28)
at org.sunspotworld.SunSpotHostApplication.run(SunSpotHostApplication.java:67)
at org.sunspotworld.SunSpotHostApplication.main(SunSpotHostApplication.java:342)
Caused by: java.lang.ClassNotFoundException: javax.microedition.io.Connection
Caused by: java.lang.ClassNotFoundException: javax.microedition.io.Connection
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 8 more
... 8 more
我已经阅读了一些涉及 xbootclasspath/a 的解决方案,但我不知道那是什么或如何管理它...
编辑:我使用 Xboothclasspath/a 和 /p 添加了 bluecove jar 路由,我唯一得到的就是有机会从我的 NetBeans 项目中删除 jar 导入。还是行不通。=(
非常感谢您提前!