title: Mismatched RXTX Versions
body: <p>I found a code to communicate in Java via Serial Port to an Arduino and wanted to try and get it working in order to expand on it for a project idea, but I keep getting this error</p>
  
  <pre><code>Stable Library
  =========================================
  Native lib Version = RXTX-2.2-20081207 Cloudhopper Build rxtx.cloudhopper.net
  Java lib Version   = RXTX-2.1-7
  WARNING:  RXTX Version mismatch
  Jar version = RXTX-2.1-7
  native lib Version = RXTX-2.2-20081207 Cloudhopper Build rxtx.cloudhopper.net
  Could not find COM port.
  Started
  </code></pre>
  
  <p>I think that it means there is jar mismatch for  the RXTX library, but the link to the build in the native lib is a website is no longer there. I'm not exactly sure how to fix the problem. My code is below if you believe that is the issue. Any help would be appreciated.</p>
  
  <pre><code>import java.io.OutputStream;
  import gnu.io.CommPortIdentifier;
  import gnu.io.SerialPort;
  import gnu.io.SerialPortEvent;
  import gnu.io.SerialPortEventListener;
  import java.io.InputStream;
  import java.util.Enumeration;
  
  public class AraInterface {
  SerialPort serialPort;
          /** The port we're normally going to use. */
          private static final String PORT_NAMES[] = { 
                          "/dev/tty.usbserial-A9007UX1", // Mac OS X
                          "/dev/ttyUSB0", // Linux
                          "COM35", // Windows //shin: ardu com port here
                          };
          private InputStream 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();
                          for (String portName : PORT_NAMES) {
                                  if (currPortId.getName().equals(portName)) { 
                                          portId = currPortId;
                                          break;
                                  }
                          }
                  }
  
                  if (portId == null) {
                          System.out.println("Could not find COM port.");
                          return;
                  }
  
                  try {
                          serialPort = (SerialPort) portId.open(this.getClass().getName(),
                                          TIME_OUT);
  
                          serialPort.setSerialPortParams(DATA_RATE,
                                          SerialPort.DATABITS_8,
                                          SerialPort.STOPBITS_1,
                                          SerialPort.PARITY_NONE);
  
                          input = serialPort.getInputStream();
                          output = serialPort.getOutputStream();
  
                          serialPort.addEventListener((SerialPortEventListener) this);
                          serialPort.notifyOnDataAvailable(true); 
                  } catch (Exception e) {
                          System.err.println(e.toString());
                  }
          }
  
          public synchronized void close() {
                  if (serialPort != null) {
                          serialPort.removeEventListener();
                          serialPort.close();
                  }
          }
  
          public synchronized void serialEvent(SerialPortEvent oEvent) {
                  if (oEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) {
                          try {
                                  int available = input.available();
                                  byte chunk[] = new byte[available];
                                  input.read(chunk, 0, available);
  
                                  String temp = new String (chunk);
                                  String ref = "Hel";
                                  if(temp.compareTo(ref)==0){
                                  System.out.println("Hello World request received");
                                  }
                                  else{
                                  System.out.println("lala" + temp);
                                  }
  
                          } catch (Exception e) {
                                  System.err.println(e.toString());
                          }
                  }
  
          }
  
          public static void main(String[] args) throws Exception {
                  AraInterface main = new AraInterface();
                  main.initialize();
                  System.out.println("Started");
          }
  }
  </code></pre>