Java 调用 C++ (Java 调用 dll)康哥手把手教你
生活随笔
收集整理的這篇文章主要介紹了
Java 调用 C++ (Java 调用 dll)康哥手把手教你
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
摘要: 本文原創(chuàng),轉載請注明地址?http://www.cnblogs.com/baokang/p/4979243.html?
?
因為要做點圖形處理的項目,需要在Java中調用dll庫,所以開發(fā)的第一步是研究了一下Java Jni的使用方法。突然發(fā)現(xiàn)Android Jni 使用跟這個好像(麻蛋,不就是一樣的嗎,但是Android中需要使用so動態(tài)鏈接庫)。
第一步 創(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項目,使用Vs2010
創(chuàng)建Win32項目,項目名字JniDemo
?
?
?
第五步 拷貝com_bk_jnidemo_JniDemo.h,jni.h,jni_md.h至vs工程cpp文件目錄下
其中jni.h在jdk的include目錄下,jni_md.h在jdk的include\win32目錄下
?
?
在項目中添加頭文件目錄下com_bk_jnidemo_JniDemo.h,#include <jni.h> 改為?#include "jni.h"
第六步 在Jni.cpp中實現(xiàn)C++方法
第七步 生成64位dll庫
?先修改配置管理器
然后生成64dll庫
?
?
第八步 把64位dll庫拷貝至Java JniDemo項目根目錄下,修改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 }第九步 運行,搞定
?
轉載于:https://www.cnblogs.com/baokang/p/4979243.html
總結
以上是生活随笔為你收集整理的Java 调用 C++ (Java 调用 dll)康哥手把手教你的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Loading class `com.m
- 下一篇: python---4