我找到了一个代码,用Java通过串口与Arduino进行通信,并希望尝试使其工作,以便为项目构思扩展它,但我不断收到此错误

Stable Library

=========================================

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

Could not find COM port.

Started

我认为这意味着RXTX库存在jar不匹配,但是在本机lib中构建的链接是一个网站不再存在.我不确定如何解决这个问题.如果您认为这是问题,我的代码如下.任何帮助,将不胜感激.

import java.io.OutputStream;

import gnu.io.CommPortIdentifier;

import gnu.io.SerialPort;

import gnu.io.SerialPortEvent;

import gnu.io.SerialPortEventListener;

import java.io.InputStream;

import java.util.Enumeration;

public class AraInterface {

SerialPort serialPort;

/** The port we're normally going to use. */

private static final String PORT_NAMES[] = {

"/dev/tty.usbserial-A9007UX1", // Mac OS X

"/dev/ttyUSB0", // Linux

"COM35", // Windows //shin: ardu com port here

};

private InputStream input;

private OutputStream output;

private static final int TIME_OUT = 2000;

private static final int DATA_RATE = 9600;

public void initialize() {

CommPortIdentifier portId = null;

Enumeration portEnum = CommPortIdentifier.getPortIdentifiers();

while (portEnum.hasMoreElements()) {

CommPortIdentifier currPortId = (CommPortIdentifier) portEnum.nextElement();

for (String portName : PORT_NAMES) {

if (currPortId.getName().equals(portName)) {

portId = currPortId;

break;

}

}

}

if (portId == null) {

System.out.println("Could not find COM port.");

return;

}

try {

serialPort = (SerialPort) portId.open(this.getClass().getName(),

TIME_OUT);

serialPort.setSerialPortParams(DATA_RATE,

SerialPort.DATABITS_8,

SerialPort.STOPBITS_1,

SerialPort.PARITY_NONE);

input = serialPort.getInputStream();

output = serialPort.getOutputStream();

serialPort.addEventListener((SerialPortEventListener) this);

serialPort.notifyOnDataAvailable(true);

} catch (Exception e) {

System.err.println(e.toString());

}

}

public synchronized void close() {

if (serialPort != null) {

serialPort.removeEventListener();

serialPort.close();

}

}

public synchronized void serialEvent(SerialPortEvent oEvent) {

if (oEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) {

try {

int available = input.available();

byte chunk[] = new byte[available];

input.read(chunk, 0, available);

String temp = new String (chunk);

String ref = "Hel";

if(temp.compareTo(ref)==0){

System.out.println("Hello World request received");

}

else{

System.out.println("lala" + temp);

}

} catch (Exception e) {

System.err.println(e.toString());

}

}

}

public static void main(String[] args) throws Exception {

AraInterface main = new AraInterface();

main.initialize();

System.out.println("Started");

}

}

解决方法:

>检查是否已安装库.如果没有,在Ubuntu的情况下,

sudo apt-get install librxtx-java

>如果已安装,

转到安装的路径—在我的案例中是/usr/share/java/RXTXcomm.jar

>如果您使用的是Ubuntu或任何Linux发行版,请从Eclipse构建路径中删除任何下载的rxtx库,并在步骤2中添加已安装的rxtx库的路径.您也可以将其复制到项目中.

>检查您的java库属性(System.getProperty(“java.library.path”))以了解该文件夹.

>将librxtxSerial.so复制到Java库路径 – 在我的例子中

sudo cp -r /usr/lib/jni/librxtxSerial.so /usr/lib / x86_64-linux-gnu

之后再次尝试您的代码.

标签:java,arduino,rxtx

来源: https://codeday.me/bug/20190624/1279509.html

java rxtx version_java – 不匹配的RXTX版本相关推荐

  1. java学习笔记:全部,txt版本

    java学习笔记:全部,txt版本 笔者注: 1.不知道怎么上传附件,所以就把txt文本内容全部贴在这里吧. 2.已经把txt版本的笔记上传到CSDN了,我没有设置索要积分才能下载,但是不知道为什么C ...

  2. Pytorch:深度学习中pytorch/torchvision版本和CUDA版本最正确版本匹配、对应版本安装之详细攻略

    Pytorch:深度学习中pytorch/torchvision版本和CUDA版本最正确版本匹配.对应版本安装之详细攻略 目录 深度学习中pytorch/torchvision版本和CUDA版本最正确 ...

  3. hook java android_Android Hook Java的的一個改進版本

    Hook Java的的一個改進版本 <注入安卓進程,並Hook java世界的方法>這篇好文相信大家都看這,里面所提到的方法估計大家也都試過.不過里面的所用的方法,我發現有兩個可以改進的地 ...

  4. java jdk 环境不一致_jdk(多版本)安装注意!

    4.第二步,开始安装Jdk的运行环境,我将它安装在..../java_jdk1.8/jre8下: 5.安装完JDK后配置环境变量  计算机→属性→高级系统设置→高级→环境变量 系统变量→新建 JAVA ...

  5. java 获取apk版本号_纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限...

    [实例简介] 纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限... 代码讲解地址:http://blog.csdn.net/chillax_li/article/details/4185 ...

  6. java编程括号匹配,Java正则表达式括号内容匹配

    Java正则表达式括号内容匹配 工作中碰到的一些问题与解决方法记录下来以备不时之需 商品品名规定英文括号正则表达式拆分规则 .*? :所有内容 [1-9] :整数数字1到9 \d :0到9 \d* : ...

  7. IDEA 运行maven项目时出错:Error java:错误: 不支持发行版本 XXX 5,12,14等

    IDEA 运行maven项目时出错:Error : java:错误: 不支持发行版本 5 java学习笔记 报错截图 错误说明 [Error : java:错误: 不支持发行版本 5]错误是因为jav ...

  8. Java JDK中几个经典的版本

    Java JDK中几个经典的版本 1. 1995年05月23日 JDK 1.0 版发布,于1996年JDK正式提供下载,标志着Java的诞生. 2. 1998年12月04日 JDK 1.2 版发布,而 ...

  9. java密码复杂度匹配规则

    java密码复杂度匹配规则 在开发中经常需要验证字符串是否匹配纯数字,纯大写,纯小写,大写小写数字特殊字符等任意两种,特别是在密码复杂度匹配时,现添加工具类校验字符串是否满足规则 import cn. ...

最新文章

  1. 4 月 24 日开播!基于神经网络建模的信息传播预测
  2. xshell / xftp家庭/学校免费版官网下载地址
  3. php编程输出心形图案_利用php输出不同的心形图案,php心形图案_PHP教程
  4. boost::fusion::filter用法的测试程序
  5. 【转】自然语言系列学习之表示学习与知识获取(四)TransE
  6. 【2012百度之星/资格赛】H:用户请求中的品牌
  7. react避免子组件渲染_如何与React一起使用正确的方法来避免一些常见的陷阱
  8. quartz2d 实现太极图
  9. get post put delete在vue中传参方式
  10. 华为交换机学习指南基于策略划分VLAN
  11. MSSQL 2012 密钥
  12. c语言约分最简分式原理,算法基础:约分最简分式
  13. 转帖 分享代码自动生成
  14. c语言编程难学么,C语言编程学习难吗?
  15. 2021年中国服务进出口回顾:进出口总额持续快速增长,其中:知识密集型服务贸易占比提高[图]
  16. [长期更新]相似单词对比
  17. 欧式空间与酉空间——概念区分
  18. 【读论文】基于三支决策的不平衡数据过采样方法
  19. 搭建网站教程 小白教程 游戏搭建制作教程
  20. 关于软件延时指定us(1T和12T)

热门文章

  1. nginx:413 Request Entity Too Large 及 修改 PHP上传文件大小配置
  2. 使用 html 标签嵌入Silverlight程序的一点小问题
  3. ThreadPoolExecutor使用错误导致死锁
  4. golang time 时间 加减法
  5. java getRuntime().exec 带符号的命令 无法执行 解决方法
  6. python3 异步 asyncio aiohttp aiohttp-requests aiofiles 使用
  7. linux网络命令 ifconfig、ifup、ifdown 网络配置 网卡开启关闭
  8. python3 正则 验证邮箱手机
  9. 深度优先搜索找迷宫的出路
  10. Linux C编程--格式化I/O