问题:在利用Java编写读取串口的程序时,遇到好多问题,在此记录一下:
1、ERROR: java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path thrown while loading gnu.io.RXTXCommDriver
Exception in thread "main" java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path
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.three.rxtx.SimpleRead.main(SimpleRead.java:86)
解决办法:
把rxtxSerial.dll 放到%JAVA_HOME%/bin (注意,不是rxtxSerial64.dll 。不过我也不是很清楚这两个dll的区别)
备注:
rxtxSerial.dll 要下对版本,有AMD和Intel版的。
系统:win7 64位
JAVA库:RXTX(提供串口和并口通信的开源java类库)
2、操作系统是win7 专业版64位,用java实现串口通信,出现的问题:Error loading win32com: java.lang.UnsatisfiedLinkError: C:\Program Files\Java\jdk1.6.0_43\jre\bin\win32com.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
解决方案:dll 是32位得把 win32com.dll错误提示,换 64位的 dll ,但是没有没有 64位 的 win32com.dll,在64位的操作系统中安装 32位的jdk 然后,在使用这个32位的dll 就好了