我有一个干净的Debian squeeze安装程序,试图运行一个jar应用程序,该应用程序将与usb端口中的蓝牙软件狗进行通信。硬件方面都在这里运行良好的蓝牙功能。
我需要通过从oracle下载jdk并使用update-alternatives将其绑定(bind)到系统中来运行已安装的Java7。

Java应用程序需要bluecove作为与系统进行通信的库。我的bluecove.jar文件位于我的类路径/home/app/lib中,其中包含gpl和普通快照。

当我通过java -cp /home/app/lib/bluecove-2.1.1-SNAPSHOT.jar -jar myapp.jar执行应用程序时,我一遍又一遍地遇到相同的错误,无法解决。就像Java无法加载bluecove。

Exception in thread "main" javax.bluetooth.BluetoothStateException: BlueCove com.intel.bluetooth.BluetoothStackBlueZ|com.intel.bluetooth.BluetoothStackBlueZDBus not available
        at com.intel.bluetooth.BlueCoveImpl.loadStackClass(BlueCoveImpl.java:356)
        at com.intel.bluetooth.BlueCoveImpl.detectStack(BlueCoveImpl.java:447)
        at com.intel.bluetooth.BlueCoveImpl.access$500(BlueCoveImpl.java:69)
        at com.intel.bluetooth.BlueCoveImpl$1.run(BlueCoveImpl.java:1044)

有人看到吗?谢谢!

最佳答案

https://code.google.com/archive/p/bluecove/downloads

都下载“bluecove-2.1.0.jar”和“bluecove-gpl-2.1.0.jar”。
linux也需要bluecove-gpl jar文件。

然后在运行时导出或使用-cp

export CLASSPATH=$CLASSPATH:(/your bluecove jar location)
export CLASSPATH=$CLASSPATH:(/your bluecove gpl jar location)
java -jar myapp.jar

10-05 23:30