隨筆-46  評論-64  文章-2  trackbacks-0

          Step1:創建帶有Native方法描述的ProcessHandler.java文件

          Step2javac 編譯該文件,生成ProcessHandler.class文件

          Step3javah ProcessHandler.class 生成pkg_ProcessHandler.h Native方法頭文件,注意包名字為pkg,所以生成的方法以pkg_開頭

          Step4:使用Eclipse建立Managed Make C++ Project,在第二步選擇Shared Library,然后把剛剛生成和的pkg_ProcessHandler.h 加入工程

          Step5:實現Native方法,從頭文件里面Copy出這個方法,完成具體實現,編譯工程,生成dll

          Step6:完成后Jni調用,注意dll庫需要在系統Path里,否則會出現java.lang.UnsatisfiedLinkError: no *** in java.library.path

          ?

          ?

          除了上面的路徑問題,還有可能不能成功調用該 dll ,原因上 g++/gcc 編譯出來的東西和 java 預期的不匹配,詳細描述參考 http://www.aygfsteel.com/lixf/archive/2005/12/23/25177.html win32 下使用 gcc 編譯供 java 調用的 dll 須知 (jni) 我也是遇到問題 Google 到這篇文章的, Solution 當然也在該文章里面

          ?

          參考資料:

          例解 VC++ 6.0 實現 JNI (非爛文)

          posted on 2007-01-16 15:33 jht 閱讀(344) 評論(0)  編輯  收藏 所屬分類: J2SE
          主站蜘蛛池模板: 金寨县| 梧州市| 平湖市| 寿光市| 广德县| 白银市| 无极县| 赞皇县| 上林县| 万安县| 阿尔山市| 阿拉尔市| 台南市| 白水县| 临邑县| 绍兴市| 宜良县| 霍山县| 余庆县| 乌兰察布市| 商都县| 舞钢市| 南宫市| 新巴尔虎左旗| 余庆县| 岢岚县| 定襄县| 七台河市| 万载县| 巴东县| 禄丰县| 大姚县| 怀柔区| 香港 | 美姑县| 镇赉县| 车致| 察雅县| 荣昌县| 日照市| 吴桥县|