国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

java jni 調用c++庫

2019-11-08 01:09:32
字體:
來源:轉載
供稿:網友

1.先創建java項目

2.用javah命令生成c++頭文件(com_xzazt_dll_HelloWorldDll.h)

打開項目所在的文件夾,打開src文件夾,按住shift鍵,鼠標點擊右鍵-->在此處打開命令窗口

①編譯java文件,生成.class文件

②用javah 生成c++頭文件

注意:javah命令要在src目錄下執行,不然會報錯“找不到 com.xzazt.dll.HelloWorldDLL 的類文件”

3.vs2015開發c++庫

打開vs2015-->文件-->新建-->項目

此處選擇Win32項目或Win32 控制臺應用程序都可以

再點擊下一步

這里選擇DLL,空項目,點擊完成。

在解決方案中,點中helloworlddll右鍵-->在文件資源管理器中打開文件夾

將剛剛生成的.h文件復制進來

點擊頭文件右鍵-->添加-->現有項

選中復制c++頭文件,點擊添加

打開c++頭文件,會發現有好些錯誤,下一步

點擊helloworlddll右鍵-->屬性

選擇VC++目錄-->包含目錄-->編譯

添加jdk中include和其下面的win32文件夾,點擊確定-->確定

創建cpp文件:源文件-->添加-->新建項

選擇C++文件,命名為helloworlddll.cpp,點擊添加

在cpp文件中寫入頭部引入,將c++頭文件中的方法復制過來,添加方法體

點擊helloworlddll右鍵-->重新生成或生成

這時在資源文件管理中打開文件夾

再上一級文件夾

在Debug文件夾中就可以找到生成的DLL文件了

測試

將dll文件復制到jdk的bin目錄中,名字改為和eclipse中的System.loadLibrary("hwDll");加載的名字一致

注意:

①:如果不想發在jdk中,也可以通過System.out.PRintln(System.getProperty("java.library.path"));查看都有哪些路徑可以使用

②:no hwDll in java.library.path:這是沒有找到hwDll 庫文件,可以通過①查看放哪里

③:E:/JDK/jdk1.7.0_45/bin/hwDll.dll: Can't find dependent libraries:這是缺少依賴的dll庫文件

可以通過depends工具查看缺少哪些依賴的dll庫,然后上網上下載就可以了,直接搜dll文件下載,有好些網站可以下載的,把下載的一樣放到jdk中就行了,或者在java代碼中透過System.load()加載dll文件(注意dll文件順序不對也會報錯的)

測試運行就可以了


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 武乡县| 武隆县| 绥芬河市| 昭通市| 萨嘎县| 大兴区| 枣阳市| 通海县| 长春市| 新宁县| 怀远县| 凌云县| 石狮市| 抚宁县| 南城县| 富宁县| 桃园市| 鄢陵县| 四川省| 尼木县| 资源县| 北京市| 闻喜县| 富川| 文山县| 双桥区| 应城市| 高淳县| 宁蒗| 兰考县| 竹北市| 鄂州市| 称多县| 湖北省| 香格里拉县| 永靖县| 南丰县| 靖宇县| 安平县| 沙坪坝区| 民勤县|