首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ubuntu中的jssc SerialPortList

Ubuntu中的jssc SerialPortList
EN

Stack Overflow用户
提问于 2012-09-01 01:47:18
回答 2查看 3.7K关注 0票数 1

我使用的是Eclipse IDE。在jssc-0.9.0版本中,我已经正确地将jssc.jar添加到引用库中。但是当我运行它的时候,它总是被终止的。说“这是我的代码”Application/usr/lib/jvm/java-6-openjdk-i386/bin/java“MainJava

代码语言:javascript
复制
import jssc.SerialPortList;
public class Main {

    public static void main(String[] args) {
        String[] portNames = SerialPortList.getPortNames();
        for(int i = 0; i < portNames.length; i++){
            System.out.println(portNames[i]);
        }
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-24 08:22:48

我遇到了类似的问题,所以我检查了jssc代码,发现在linux中,SerialPortList.getPortNames()解析dmesg输出以'ttyS‘或'ttyUSB’开头的端口名--但是我唯一的串行设备在ttyACM0上,当然getPortNames函数找不到它……在运行代码时,您还可以检查jssc的linux本机库(libjSSC-0.9x86.so)是否从jssc.jar解压缩到~/.jssc/linux/。

票数 1
EN

Stack Overflow用户

发布于 2016-03-17 18:28:07

我遇到了同样的问题,以我的浅见,答案是不正确的-至少在2.8.0版本的jssc中是不正确的。

在我的例子中,Port列表是空的,因为Linux (我的例子是Ubuntu 12.04 )不允许任何用户使用串行端口--这就是为什么这个列表是空的。因此,我执行了以下命令,将我的用户添加到允许使用串行端口的用户组:

代码语言:javascript
复制
sudo usermod -a -G dialout tim

我需要注销并再次登录系统,才能被系统识别为该组的成员-但之后,当我执行上面的代码片段时,我得到了以下代码行:

代码语言:javascript
复制
/dev/ttyACM0

它现在包含唯一配置的串行端口,由于权限,允许我的用户查看该端口。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12220240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档