getportidentifiers()在运行Debian 6的设备上为空



我恐怕这可能不是一个严格意义上的编程问题,而是我需要澄清的东西,以便继续我的编程。

我只是想写一个程序来做串行通信,特别是使用javax.comm API,我在Win7上成功了,但是当我在我的设备上运行任何这样的程序时,我没有得到输出。设备运行Debian 6,并且安装了JDK1.8.0。

为了在Win7上运行我的程序,我需要获得API并将三个魔法文件com .jarwin32com .dlljavax.com .properties放在特定的文件夹中,但我不知道如何在我的设备上做到这一点。

有人知道我是否可以把这三个文件放在一些任意文件夹中,并使用路径环境变量引用它们?

我想运行的代码很简单:

package test;
import java.util.Enumeration;
import javax.comm.*;
public class Test { 
    public static void main(String[] args) {
        Enumeration e = CommPortIdentifier.getPortIdentifiers();
        while (e.hasMoreElements()) {
            CommPortIdentifier com = (CommPortIdentifier) e.nextElement();
            System.out.println(com.getName());          
        }
}

根据http://reprap.org/wiki/JavaComm#Installation_on_Linux,您需要一些文件:

commapi/jar/comm.jar
commapi/lib/libLinuxSerialParallel.so
commapi/lib/libLinuxSerialParallel_g.so
commapi/docs/javax.comm.properties

"把jar文件放在你的类路径的某个地方(例如像usr/java/j2sdk/jre/lib/ext的某个地方),在java的加载库路径(在我的系统上,在/usr/java/j2sdk/jre/lib/i386)的. .文件,和javax.com属性"java可以找到它的某个地方"-在我的系统上,这似乎意味着创建一个符号链接到它从你运行项目的目录,但必须有一个更简单的方法。"

您可能希望找到用于构建库的源代码,以防二进制文件在您的系统上不能工作,并自己编译它们。

关于如何自己做到这一点的提示:

http://www.phidgets.com/phorum/viewtopic.php?f=39& t = 3750

https://github.com/rxtx/rxtx.git

相关内容

  • 没有找到相关文章

最新更新