我正在写一个必须与之通信的
java应用程序必须通过usb-cable与XBee无线电进行通信.为此,我使用xbee-java API(
http://code.google.com/p/xbee-api/)
在我的旧32位机器上,一切正常.
但是当我将项目导入到64位计算机时,它会立即抛出一个异常,上面写着:“无法在AMD 64位平台上加载IA 32位.dll”.
我不知道如何解决这个问题.
错误代码:
java.lang.UnsatisfiedLinkError: C:\Users\Tom\Documents\XbeeJava\rxtxSerial.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform thrown while loading gnu.io.RXTXCommDriver Closing connection with local XBee Exception in thread "Thread-1" java.lang.UnsatisfiedLinkError: C:\Users\Tom\Documents\XbeeJava\rxtxSerial.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform at java.lang.ClassLoader$NativeLibrary.load(Native Method) at java.lang.ClassLoader.loadLibrary0(Unknown Source) at java.lang.ClassLoader.loadLibrary(Unknown Source) at java.lang.Runtime.loadLibrary0(Unknown Source) at java.lang.System.loadLibrary(Unknown Source) at gnu.io.CommPortIdentifier.<clinit>(CommPortIdentifier.java:83) at com.rapplogic.xbee.RxTxSerialComm.openSerialPort(RxTxSerialComm.java:71) at com.rapplogic.xbee.RxTxSerialComm.openSerialPort(RxTxSerialComm.java:61) at com.rapplogic.xbee.api.XBee.open(XBee.java:140) at me.server.HardwareCommunications.SensorListener.run(SensorListener.java:47) at java.lang.Thread.run(Unknown Source)
谢谢,汤姆
解决方法
无法将32位DLL加载到64位进程中.
根据描述,您运行的JVM是64位,但DLL rxtxSerial.dll是32位.要解决,要么:
>获取64位rxtxSerial.dll,或>使用当前的rxtxSerial.dll安装和使用32位JVM
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。