2016-11-19 46 views
0

我從here下載源。這是我試圖打開COM端口的代碼。Java簡單串行連接器trows異常UnsatisfiedLinkError

我在設備menager中看到com port13存在。

import jssc.*; 

public class Main { 
    static boolean s = false; 
    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     SerialPort ser = new SerialPort("COM1"); 
     try { 
      s = ser.openPort(); 
     } catch (SerialPortException e) { 
      // TODO Auto-generated catch block 
      System.out.println("Riko Stana neshto"); 
      //e.printStackTrace(); 
     } 
     //System.out.println("Riko" + ser.getPortName() ); 
    } 
} 

當在Eclipse中運行這個出現在控制檯:

Exception in thread "main" java.lang.UnsatisfiedLinkError: jssc.SerialNativeInterface.openPort(Ljava/lang/String;Z)J

at jssc.SerialNativeInterface.openPort(Native Method) at jssc.SerialPort.openPort(SerialPort.java:158) at Main.main(Main.java:9)

的linbrary包括java文件和兩個DLL文件。我將java文件鏈接到eclipse項目,但不知道它們如何鏈接到dll文件。我應該做些什麼來將.java文件鏈接到.dll文件?這可能是我的問題的原因?很感謝任何形式的幫助。

+0

你下載的源代碼或者也許分佈式jssc.jar文件? –

回答

1
  1. 下載JSSC拉鍊這裏:https://code.google.com/archive/p/java-simple-serial-connector/downloads
  2. 提取jssc.jar在項目文件夾。
  3. 將「jssc.jar」添加到類路徑中作爲.jar庫。
  4. 可選:在項目文件夾中提取javadoc/jssc-2.7.0-javadoc.jar和javadoc/jssc-2.7.0-src.jar,並分別將它們添加爲javadoc和源代碼。

問題已解決。

編輯 - pitcure: 1

+0

它的工作原理,但如何? :) 它沒有DLL,只有C++源文件。這是否意味着它在使用之前以某種方式編譯它們? – Hairi

+1

@Hairi我研究了代碼,並將dll文件存儲在jssc.jar中,該文件在用戶文件夾(C:\ Users \ \ .jssc)內的第一個stratup中提取它們。 – 493msi