调试串口报错
具体的报错如下:
Native lib Version = RXTX-2.2-20081207 Cloudhopper Build rxtx.cloudhopper.net
Java lib Version = RXTX-2.1-7
WARNING: RXTX Version mismatch
Jar version = RXTX-2.1-7
native lib Version = RXTX-2.2-20081207 Cloudhopper Build rxtx.cloudhopper.net
Error 0x5 at …\rxtx\src\termios.c(892): 拒绝访问。
程序中打印的日志:
19:05:17.690 [MQTT Call: 981cb85fc47222413d4d288f0ef8919d] ERROR ModbusUtils - [openPort,74] - 捕捉异常:{}
gnu.io.PortInUseException: Unknown Application
分析:根据字面的意思是RXTX的版本和当前的Jar版本不一致,但是我们从RXTX的官网只看到了RXTX-2.2-20081207这个最新的版本,其他网站找的都是不能用的,最后我们排查下来总结了两点
- 检查JDK是否正确安装(我本地的环境是JDK1.8,原因是JDK安装的有问题)。
- 下载的RXTX的两个脚本文件有没有放到jdk安装目录中bin文件夹下,文件名叫做:rxtxParallel.dll和 rxtxSerial.dll