java native:Java本地方法调用(jni方式)

本文详细介绍了如何使用JNI调用Java本地方法,包括在Eclipse中生成javah文件、使用Visual Studio创建DLL项目以及解决常见错误。此外,还探讨了模仿Object的registerNatives()方法,讨论了它的优点以及在JNI_OnLoad中注册本地方法的步骤。
摘要由CSDN通过智能技术生成

传统做法

1.  编写包含本地方法的Java类(Eclipse)

package test;

public class Example {
	public native void set(String info);
	public native String get();
}

2. 生成javah文件(Eclipse)

(1)点击eclipse工具栏外部工具按钮,打开配置外部工具;

(2)选中program右键点击添加;

(3)配置如下信息后点击run,生成的test_Example.h文件在项目的jni目录下。

name框里输入命令的名字:javah

location框里输入javah.exe的绝对路径: D:\jdk1.8\bin\javah.exe

Working Directory框里输入:${project_loc}

Arguments框里输入: -v-classpath "${project_loc}/bin" -d "${project_loc}/jni"-jni ${java_type_name}


3. 创建dll项目(Visual Studio)

(1)vs下新建DLL项目,将test_Example.h和jni.h(包含JAVA_HOME/include/jni.h和JAVA_HOME/include/win32/jni_md.h)添加进工程。


(2)新建dlltest.cpp实现test_Example.h的C++函数

#include <iostream>
#include "opencv2/highgui/highgui.hpp"
#include "test_Example.h"

std::string s =
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值