Java RXTX在ubuntu中不工作
终于在windows中成功读取了rxtx,但现在我无法在Ubuntu中运行。我使用apt get获取rxtx libs,但当我运行应用程序时,我看不到任何东西,尝试了几个try-catch块,甚至没有异常,而且由于目前无法进行基于Ubuntu的调试,我无法确定问题所在。 (Ubuntu是12.04 64位)Java RXTX在ubuntu中不工作,java,ubuntu,rxtx,Java,Ubuntu,Rxtx,终于在windows中成功读取了rxtx,但现在我无法在Ubuntu中运行。我使用apt get获取rxtx libs,但当我运行应用程序时,我看不到任何东西,尝试了几个try-catch块,甚至没有异常,而且由于目前无法进行基于Ubuntu的调试,我无法确定问题所在。 (Ubuntu是12.04 64位) 检查配置文件javax.comm.properties是否在类路径上。由于这个文件,我在使用RXTX时遇到了无数问题—它只是默默地失败。我昨天也遇到了同样的问题,并发现: 也就是说,您需要设
检查配置文件
javax.comm.properties
是否在类路径上。由于这个文件,我在使用RXTX时遇到了无数问题—它只是默默地失败。我昨天也遇到了同样的问题,并发现:
也就是说,您需要设置
gnu.io.rxtx.SerialPorts
系统属性,该值应该是要打开的端口的名称。您是否在类路径中添加了rxtx库。我发现你没有在你的java文件中导入合适的类。RXTXcomm.jar文件被添加到构建路径中…erm似乎找不到它…它通常位于哪里?啊。那可能就是问题所在。检查这里:-您可能需要在某个地方找到一个包含属性文件的javax comm包OK找到一个包含3个文件的rar文件,其中一个是.properties文件。如何添加它?从build path/configure build path菜单?我想是将其添加为项目资源吧。尝试将其添加到资源和我的usr/jdk/。。。文件夹和仍然没有,meh:/您能说明如何设置gnu.io.rxtx.SerialPorts
system属性吗?这就是我在代码中所做的:system.setProperty(“gnu.io.rxtx.SerialPorts”,serialPortID)代码>
import gnu.io.*;
import java.io.*;
import javax.swing.JOptionPane;
public class ReadComPort {
public static void main(String[] s) {
readcomport();
}
public static String readcomport() {
String value = null;
try {
// CommPortIdentifier portIdentifier = CommPortIdentifier
// .getPortIdentifier("COM1");
// String comportidentifier = "COM1"; //*win
String comportidentifier = "/dev/ttyS0";
CommPortIdentifier portIdentifier = null;
portIdentifier = CommPortIdentifier.getPortIdentifier(comportidentifier);
if (portIdentifier.isCurrentlyOwned()) {
JOptionPane.showMessageDialog(null, "port in use");
} else {
SerialPort serialPort = (SerialPort) portIdentifier.open("ReadComPort", 500);
JOptionPane.showMessageDialog(null, serialPort.getBaudRate());
serialPort.setSerialPortParams(serialPort.getBaudRate(), SerialPort.DATABITS_8, SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
// serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_RTSCTS_IN | SerialPort.FLOWCONTROL_RTSCTS_OUT);
serialPort.setDTR(true);
serialPort.setRTS(true);
InputStream mInputFromPort = serialPort.getInputStream();
Thread.sleep(500);
byte mBytesIn[] = new byte[32];
mInputFromPort.read(mBytesIn);
value = new String(mBytesIn);
mInputFromPort.close();
serialPort.close();
}
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Exception : " + ex.getMessage());
}
return value;
}
}
String serialPortID = "/dev/ttyAMA0";
System.setProperty("gnu.io.rxtx.SerialPorts", serialPortID);