eclipse下編譯jni的配置

   JNI調用要做三件事,一使用javah命令生成C頭文件,二編寫完成本地方法生成可調用的DLL文件(Windows平臺),三java類中加載這個dll文件。

   Eclipse環境下自然不能忍受手動敲命令這麼重的體力活了。我們首先要做的就是配置一個Javah命令:

   打開"External Tools Configurations",這個功能在哪?告訴你在工具欄Run旁邊那個有個按鈕^_^,界面如圖:

這裏指定頭文件輸出的目錄是項目的jni目錄下,這個可自行設置。現在只需要編寫一個帶有native的類,然後執行這個命令即可生成頭文件了。

   接下來是編寫本地方法,生成的本地庫文件。C/C++編譯器可自行選擇,如果使用微軟visual studio,從開始菜單打開vs的命令行輸入編譯命令cl -I c:\java\jdk1.7\include -I
 c:\java\jdk1.7\include\win32 -LD E:\workspace\JniDemo\jni\HelloNative.c -FeE:\workspace\JniDemo\jni\HelloNative.dll。
-LD是要生成DLL文件,-Fe是指定dll文件名,同時這裏還需指定jdk中jni.h文件的路徑,否則是編譯不了的。當然你也可以把這幾個文件拷貝到你的.c文件相同目錄。

   生成好的dll文件放在項目的根目錄下,否則會出現java加載不到dll的異常:java.lang.UnsatisfiedLinkError: no XXX in java.library.path。可是每次都要拷實在麻煩啊,當然還有解決之道了,我們可以配置項目的Build Path,打開Build Path配置Source選項卡,展開src目錄下有個Native library location將目錄指定要我們dll生成的目標文件夾即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章