MangoAutomation / modbus4j

A high-performance and ease-of-use implementation of the Modbus protocol written in Java. Supports ASCII, RTU, TCP, and UDP transports as slave or master, automatic request partitioning and response data type parsing.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

run modbus4j error

zhouhangzooo opened this issue · comments

I’m importing modbus 4j-2.0.2. Jar and JSSC-2.8.0. Jar, error running project as follows:

java.lang.NoSuchMethodError: com.serotonin.io.serial.SerialUtils.openSerialPort
at com.serotonin.modbus4j.serial.SerialMaster.init(SerialMaster.java:58)
at com.serotonin.modbus4j.serial.rtu.RtuMaster.init(RtuMaster.java:45)

I need a solution,thank your!

I found the missing RXTXPort and SerialPort in the MODBUS 4J project, which you referenced, and the code is as follows:
import gnu.io.RXTXPort;
import gnu.io.SerialPort;

That is a very old version of modbus4J which likely depends on RxTx Java not JSSC for serial port support.

That is a very old version of modbus4J which likely depends on RxTx Java not JSSC for serial port support.

What are the latest jars you use in Modbus4j? What is the exact version?

That is a very old version of modbus4J which likely depends on RxTx Java not JSSC for serial port support.

What are the latest jars you use in Modbus4j? What is the exact version?
I used mobus4j. Jar and RXTXCOMM. Jar, there was still an error.
java.lang.UnsatisfiedLinkError: Native method not found: jssc.SerialNativeInterface.openPort:(Ljava/lang/String;Z)J
at jssc.SerialNativeInterface.openPort(Native Method)
at jssc.SerialPort.openPort(SerialPort.java:158)
at com.example.socketapp.modbus4j.util.TestSerialPortWrapper.open(TestSerialPortWrapper.java:52)
at com.example.socketapp.modbus4j.serial.SerialMaster.openConnection(SerialMaster.java:100)
at com.example.socketapp.modbus4j.serial.rtu.RtuMaster.openConnection(RtuMaster.java:85)
at com.example.socketapp.modbus4j.serial.rtu.RtuMaster.init(RtuMaster.java:74)

That is a very old version of modbus4J which likely depends on RxTx Java not JSSC for serial port support.

What are the latest jars you use in Modbus4j? What is the exact version?
I used mobus4j. Jar and RXTXCOMM. Jar, there was still an error.
java.lang.UnsatisfiedLinkError: Native method not found: jssc.SerialNativeInterface.openPort:(Ljava/lang/String;Z)J
at jssc.SerialNativeInterface.openPort(Native Method)
at jssc.SerialPort.openPort(SerialPort.java:158)
at com.example.socketapp.modbus4j.util.TestSerialPortWrapper.open(TestSerialPortWrapper.java:52)
at com.example.socketapp.modbus4j.serial.SerialMaster.openConnection(SerialMaster.java:100)
at com.example.socketapp.modbus4j.serial.rtu.RtuMaster.openConnection(RtuMaster.java:85)
at com.example.socketapp.modbus4j.serial.rtu.RtuMaster.init(RtuMaster.java:74)

https://github.com/MangoAutomation/modbus4j/releases/tag/v3.1.0

Use Maven to manage your dependencies. See the README.md file for where the builds are located.