美文网首页
文本编辑器编写Java并引入第三方jar包

文本编辑器编写Java并引入第三方jar包

作者: 爱恨_交加 | 来源:发表于2021-11-23 10:00 被阅读0次

步骤

以Windows环境为例

1、安装JDK环境,配置系统的环境变量PATH和CLASSPATH,使得可以在任意目录下均可执行javajavac命令

2、编写java文件
这里的示例是调用第三方jar包[jlibmodbus-1.2.9.7.jar]的功能

import com.intelligt.modbus.jlibmodbus.Modbus;
import com.intelligt.modbus.jlibmodbus.exception.ModbusIOException;
import com.intelligt.modbus.jlibmodbus.master.ModbusMaster;
import com.intelligt.modbus.jlibmodbus.master.ModbusMasterFactory;
import com.intelligt.modbus.jlibmodbus.msg.request.ReadHoldingRegistersRequest;
import com.intelligt.modbus.jlibmodbus.msg.response.ReadHoldingRegistersResponse;
import com.intelligt.modbus.jlibmodbus.tcp.TcpParameters;
import com.intelligt.modbus.jlibmodbus.utils.FrameEvent;
import com.intelligt.modbus.jlibmodbus.utils.FrameEventListener;

public class HelloWorld {

    public static void main(String[] args) throws Exception {
        System.out.println("modbus");
        Modbus.setLogLevel(Modbus.LogLevel.LEVEL_DEBUG);
        Modbus.setAutoIncrementTransactionId(true);
        TcpParameters tcpParameters = new TcpParameters("10.42.1.33", 502, true);
        ModbusMaster master = ModbusMasterFactory.createModbusMasterTCP(tcpParameters);
        master.setResponseTimeout(5000);
        FrameEventListener listener = new FrameEventListener(){
            @Override
            public void frameSentEvent(FrameEvent event){
                // TODO
            }
            public void frameReceivedEvent(FrameEvent event){
                // TODO
            }
        };
        System.out.println("conn ==> start");
        master.connect();
        System.out.println("conn ==> end");
        System.out.println("valid ==>" + master.isConnected());
        ReadHoldingRegistersRequest req = new ReadHoldingRegistersRequest();
        //req.setTransactionId(0);
        //req.setProtocolId(0x0000);
        //req.setServerAddress(Modbus.TCP_DEFAULT_ID);
        req.setStartAddress(1);
        req.setQuantity(40);
        ReadHoldingRegistersResponse res = (ReadHoldingRegistersResponse)master.processRequest(req);
        byte[] resBytes = res.getBytes();
        System.out.println("response data len ==> " + resBytes.length);
    }

}

其目录结构是这样的


备注:不能直接调用jar包文件,需要把jar包解压出来

3、编译、执行
在当前目录下执行如下命令:

# 编译
javac HelloWorld.java
# 执行
java HelloWorld

相关文章

网友评论

      本文标题:文本编辑器编写Java并引入第三方jar包

      本文链接:https://www.haomeiwen.com/subject/yvlltrtx.html