代码如下
import java.io.*;
import java.util.*;
import javax.comm.*;public class Communication { private static SerialPort serialPort;
private static String portName;
private static InputStream in;
private InputStream inputStream;
public static void main (String arg[]){
try{
CommPortIdentifier portId = CommPortIdentifier.getPortIdentifier(portName) ;

try {
serialPort = (SerialPort)portId.open("Serial_Communication",5000);
} catch (PortInUseException e) {
// TODO Auto-generated catch block
e.printStackTrace();

serialPort. setSerialPortParams (4800,SerialPort.DATABITS_8,SerialPort.STOPBITS_1 ,SerialPort.PARITY_NONE);
try {
in = serialPort.getInputStream();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
catch (UnsupportedCommOperationException e) 

System.out.println("UnsupportedCommOperation"); 

catch (NoSuchPortException e) 

System.out.println("NoSuchPort");

System.out.println("done") ;
}运行结果
NoSuchPort
done鼠标放在CommPortIdentifier portId = CommPortIdentifier.getPortIdentifier(portName)上面,会提示
This element neither has attached source nor attached Javadoc and hence no Javadoc could be found.求高手指教。。

解决方案 »

  1.   


    portName没有进行初始化。那肯定就是空了。
      

  2.   

    就是在使用portname的时候,先给portName赋值!
      

  3.   

    我直接换成COM4,还是一样的结果。。
    我的外接设备就是连在COM4上。。
      

  4.   

    解决了,其实就是lib要指向java的jre位置,而不是Eclipse自带的那个。。
      

  5.   

    我也遇到了类似的问题,运行桌面程序的时候完全没有问题,可是在myeclipse中运行的时候就报找不到端口,把IDE自带的jdk改为本地安装的jdk之后运行就完全正确了