日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

Java 调用 C++ (Java 调用 dll)康哥手把手教你

發(fā)布時(shí)間:2025/7/14 c/c++ 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java 调用 C++ (Java 调用 dll)康哥手把手教你 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

摘要: 本文原創(chuàng),轉(zhuǎn)載請(qǐng)注明地址?http://www.cnblogs.com/baokang/p/4979243.html?

?

因?yàn)橐鳇c(diǎn)圖形處理的項(xiàng)目,需要在Java中調(diào)用dll庫(kù),所以開(kāi)發(fā)的第一步是研究了一下Java Jni的使用方法。突然發(fā)現(xiàn)Android Jni 使用跟這個(gè)好像(麻蛋,不就是一樣的嗎,但是Android中需要使用so動(dòng)態(tài)鏈接庫(kù))。

第一步 創(chuàng)建Java工程,命名JniDemo,添加JniDemo.java

?

第二步 在Java類中添加native方法

/*** @author Baokang*/ public class JniDemo{public native static void set(int i);public native static int get(); }

第三步 使用javah命令生成頭文件

在cmd中執(zhí)行javah javah com.bk.jnidemo.JniDemo,生成?com_bk_jnidemo_JniDemo.h 頭文件

?

第四步 創(chuàng)建DLL項(xiàng)目,使用Vs2010

創(chuàng)建Win32項(xiàng)目,項(xiàng)目名字JniDemo

?

?

?

第五步 拷貝com_bk_jnidemo_JniDemo.h,jni.h,jni_md.h至vs工程cpp文件目錄下

其中jni.h在jdk的include目錄下,jni_md.h在jdk的include\win32目錄下

?

?

在項(xiàng)目中添加頭文件目錄下com_bk_jnidemo_JniDemo.h,#include <jni.h> 改為?#include "jni.h"

第六步 在Jni.cpp中實(shí)現(xiàn)C++方法

第七步 生成64位dll庫(kù)

?先修改配置管理器

然后生成64dll庫(kù)

?

?

第八步 把64位dll庫(kù)拷貝至Java JniDemo項(xiàng)目根目錄下,修改JniDemo.java

注意64位dll在X64目錄下,然后修改JniDemo.java如下

1 package com.bk.jnidemo; 2 3 public class JniDemo { 4 static{ 5 System.loadLibrary("JniDemo"); 6 } 7 public native static void set(int i); 8 public native static int get(); 9 10 public static void main(String[] args) { 11 set(100); 12 System.out.println(get()); 13 14 } 15 }

第九步 運(yùn)行,搞定

?

轉(zhuǎn)載于:https://www.cnblogs.com/baokang/p/4979243.html

總結(jié)

以上是生活随笔為你收集整理的Java 调用 C++ (Java 调用 dll)康哥手把手教你的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。