I just run some codes to get a list of available ports n my cmputer and it returned me false when I have 3 com ports that are free. How do I solve this prob?
My codes:
public static void main(String[] args) {
//SerialParameters params=new SerialParameters();
// System.out.println(CommPortIdentifier.PORT_SERIAL );
Enumeration portList = CommPortIdentifier.getPortIdentifiers();
System.out.println(portList.hasMoreElements());
while(portList.hasMoreElements()){
System.out.println("Has more elements");
CommPortIdentifier portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_PARALLEL) {
System.out.println(portId.getName());
}
else{
System.out.println(portId.getName());
}
}
}
Output: false
It appears your setup of the javax.comm API may not be correct. Make sure you have done the following:
comm.jar
file in the jre/lib/ext
directory.javax.comm.properties
file in the jre/lib
directory.win32com.dll
in the jre/bin
directory.Each of the above components "should" be available here .
I'm using ubuntu and my computer does not have any serial/pararel port.
You need to simulate this ports in this case.
My answer:
I have an additional answer, if you happen to do what I naively did.
I just forgot to add my user to the dialout
group, and the result was to find no serial ports, while my /dev/ttyUSB0
was forwarded correctly to my VirtualBox instance of a Lubuntu machine.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.