2013-03-20 4 views
1

에 포트를 나열 할 수 없습니다 :RXTX 내가 간단한 코드를 실행하기 위해 노력하고있어 우분투

import java.io.BufferedReader; 
import java.io.InputStreamReader; 
import java.io.OutputStream; 
import gnu.io.CommPortIdentifier; 
import gnu.io.SerialPort; 
import gnu.io.SerialPortEvent; 
import gnu.io.SerialPortEventListener; 
import java.util.Enumeration; 


public class SerialTest implements SerialPortEventListener { 
SerialPort serialPort; 
private BufferedReader 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(); 
System.out.println("a " + currPortId.getName()); 
} 
} 

public synchronized void close() { 
//... 
} 

public synchronized void serialEvent(SerialPortEvent oEvent) { 
// ... 
} 

public static void main(String[] args) throws Exception { 
SerialTest main = new SerialTest(); 
main.initialize(); 
} 
} 

을하고 내 시스템에서 사용할 수있는 COM 포트를 나열해야합니다. 내가 일하고 있어요 3.2.0-39 제네릭 # 내가 RXTX는 apt-get을 저장소에서 설치해야하지만 몇 가지 문제 이후 나는 소스에서 설치 GNU/리눅스 및 Java 1.6

먼저 62 우분투 x86_64에의 x86_64에의 x86_64의 여전히 작동하지 않습니다. 모든 ttyS *에서 chmod 777을 사용 권한에 문제가 없는지 확인합니다.
나는 this으로 시도하고 도움이되지 않을 것입니다.

답변

1

클래스 경로에도 .so 파일이 있어야합니다.

미리 빌드 된 바이너리는 http://rxtx.qbang.org/wiki/index.php/Download에서 다운로드 할 수 있지만 32 비트로 만 제공됩니다.

Eclipse를 사용하는 경우 .so 파일을 프로젝트 루트에 놓을 수 있습니다. 그래도 작동하지 않으면 java.library.path VM 인수를 설정해보십시오. 해당 지침은 How to set the java.library.path from Eclipse

+0

http://rxtx.qbang.org/wiki/index.php/Download -link 실패 :(새로운 링크 나는 분투가있는 컴퓨터를 사용하고 –

+0

을 업로드하시기 바랍니다 14.04 - 64 비트 rxtx-2.1.-7-bins-r2.zip을 다운로드하고 압축을 풉니 다. 그런 다음 x86 및 64bits 용 디렉토리에서 librxtxSerial.so를 넣은 다음 jar 파일이있는 디렉토리에 복사했습니다. RXTX를 사용하려고합니다. 에도 불구하고, 나는 계속 java-library-path 문제를 겪고 있습니다. – javixanxez

1

librxtxSerial.so library의 64 비트 버전에서 찾을 수 있습니다. 나는 그것을 테스트하고 작동합니다.

Donwload이 파일과에 복사 /usr/lib folder