載入庫檔案有兩個函式, System.load和System.loadLibrary。 當使用System.load 時,需要輸入檔案的全路徑,例如: System.load(“/tmp/test.so”);當使用System.loadlibrary 時是在系統的library的目錄中需找符合條件的庫檔案,可以使用 -Djava.library.path=[path]引數,來指定Java程式載入庫檔案的路徑,或者將庫檔案( *.so,*.dll)複製到include的預設路徑, Linux一般是/usr/lib目錄下,當然可以編輯/etc/ld.so.conf.d/下的檔案,設定自己的庫查詢路徑ldconfig -v|grep xxx看看有沒有動態庫。 Linux還要注意,使用 System.loadLibrary(name)方法其中引數內容與Windows有區別, Linux中的的庫檔名為libname.so.dll。在Windows中儘量使用Windows的C/C++編譯器生成dll檔案,否則會出現問題。
載入庫檔案有兩個函式, System.load和System.loadLibrary。 當使用System.load 時,需要輸入檔案的全路徑,例如: System.load(“/tmp/test.so”);當使用System.loadlibrary 時是在系統的library的目錄中需找符合條件的庫檔案,可以使用 -Djava.library.path=[path]引數,來指定Java程式載入庫檔案的路徑,或者將庫檔案( *.so,*.dll)複製到include的預設路徑, Linux一般是/usr/lib目錄下,當然可以編輯/etc/ld.so.conf.d/下的檔案,設定自己的庫查詢路徑ldconfig -v|grep xxx看看有沒有動態庫。 Linux還要注意,使用 System.loadLibrary(name)方法其中引數內容與Windows有區別, Linux中的的庫檔名為libname.so.dll。在Windows中儘量使用Windows的C/C++編譯器生成dll檔案,否則會出現問題。