Windows下JNI的使用教程

JNI的使用大致有以下4个步骤:

一、在Java中写native方法

二、用javah命令生成C/C++头文件

三、写对应的C/C++程序实现头文件中声明的方法,并编译成库文件

四、在Java中加载这个库文件并使用

工具:

1. Eclipse for Java

2. Visual Studio 2015

依赖:

JDK和JRE:1.8.0_144版本

步骤:

在Eclipse新建一个java项目

添加一个java类,放在com.jni包下

注意:java代码都不要放到默认包下(就是不写package语句就会放到默认包),默认包下的方法在其他地方都不能调用!!

写native方法,native方法就是声明一个非java实现的方法,比如用C/C++实现

1 package com.jni;
2
3 public class JNI {
4     public native String getString();
5 }

在Eclipse生成,此时在项目目录会生成对应的.class文件,Eclipse会将.class文件放在项目目录的bin文件夹下

打开cmd,进入bin目录

运行javah命令,生成C/C++头文件,注意要带上java包名

注意:此处是在bin目录运行javah,不能进入com/jni下来运行javah,否则不能生成头文件。

此时在bin目录下生成了JNI.h头文件

头文件内容如下:

 1 /* DO NOT EDIT THIS FILE - it is machine generated */
 2 #include <jni.h>
 3 /* Header for class com_jni_JNI */
 4
 5 #ifndef _Included_com_jni_JNI
 6 #define _Included_com_jni_JNI
 7 #ifdef __cplusplus
 8 extern "C" {
 9 #endif
10 /*
11  * Class:     com_jni_JNI
12  * Method:    getString
13  * Signature: ()Ljava/lang/String;
14  */
15 JNIEXPORT jstring JNICALL Java_com_jni_JNI_getString
16   (JNIEnv *, jobject);
17
18 #ifdef __cplusplus
19 }
20 #endif
21 #endif

接下来打开Visual studio 2015,创建一个空的win32控制台程序,在程序类型选择DLL:

配置JNI开发环境:

在【项目设置】 -> 【VC++目录】 -> 【包含目录】中,添加JNI头文件的路径

JNI头文件一般放在jdk目录下的include文件夹,还有include文件夹下的win32文件夹

注意release和debug以及32位和64位的选择

将刚刚生成的头文件复制到vs项目目录下,在项目中添加该头文件,同时添加cpp实现头文件中的函数

main.cppd代码如下:

#include "com_jni_JNI.h"

JNIEXPORT jstring JNICALL Java_com_jni_JNI_getString
(JNIEnv *env, jobject obj) {
    return env->NewStringUTF("string from C++");
}

生成项目,在项目目录的x64或release文件夹下生成了JNI.dll动态库,讲dll文件复制到Eclipse项目目录下

修改JNI.java代码,加载JNI库并添加运行代码

 1 package com.jni;
 2
 3 public class JNI {
 4     static {
 5         System.loadLibrary("JNI");
 6     }
 7
 8     public native String getString();
 9
10     public static void main(String args[]) {
11         JNI jni = new JNI();
12         System.out.println(jni.getString());
13     }
14 }

生成并运行,就可以看到从c++中返回的字符串了

时间: 2024-10-08 21:53:38

Windows下JNI的使用教程的相关文章

Windows 下安装 Oracle 12c 教程

原文 Windows 下安装 Oracle 12c 教程 申明:本文原作者:Jmq   本文给大家带来的是 Oracle 12C 的安装教程. 1.准备 1.1 下载 Oracle 12c 安装程序 下载地址可参考:http://www.wxzzz.com/1231.html 文章可顺利下载. 1.2 解压下载好的两个压缩文件 将两个压缩包解压到同一个目录下,即“database”,然后单击解压目录下的“setup.exe”文件: 2.安装过程 2.1.双击”setup.exe”进行安装 软件会

Windows下安装jmeter图文教程(来源于网络)

这篇文章主要介绍了Windows下安装jmeter图文教程,JMeter是Apache软件基金会的产品,用于对静态的和动态的资源性能进行测试,需要的朋友可以参考下 JMeter是Apache软件基金会的产品,用于对静态的和动态的资源(文件,Servlet,Perl脚本,Java 对象,数据库和查询,FTP服务器等等)的性能进行测试.是一款很方便的测试软件.系统:windows xp 需要的软件包:jdk-6u34-windows-i586.exe apache-jmeter-2.7.zip1.下

Windows下安装MySQL详细教程

Windows下安装MySQL详细教程 1.安装包下载  2.安装教程 (1)配置环境变量 (2)生成data文件 (3)安装MySQL (4)启动服务 (5)登录MySQL (6)查询用户密码 (7)设置修改用户密码 (8)退出 1.安装包下载. 下载地址:https://dev.mysql.com/downloads/mysql/ 点击下载之后,可以选择注册Oracle账号,也可以跳过直接下载. 下载完成后,选择一个磁盘内放置并解压. 2 安装教程 (1)配置环境变量 变量名:MYSQL_H

图解Windows下 GIT GUI 使用教程

https://jingyan.baidu.com/article/19020a0a7ae6af529c284248.html 本篇经验将和大家介绍Windows下 GIT GUI 使用教程,希望对大家的工作和学习有所帮助! 方法/步骤 1 百度搜索下载Git安装,如下图所示: 2 安装步骤省略,直接下一步即可,直至出现下面的图片,说明安装成功,如下图所示: 3 使用git GUI克隆已存在的仓库 在本地新建一个文件夹test,选中后点击右键,选择Git GUI Her,出现下图,选择第二个,克

[转]Windows 下安装 Oracle 12c 教程

1.准备 1.1 下载 Oracle 12c 安装程序 下载地址可参考:http://www.wxzzz.com/1231.html 文章可顺利下载. 1.2 解压下载好的两个压缩文件 将两个压缩包解压到同一个目录下,即“database”,然后单击解压目录下的“setup.exe”文件: 2.安装过程 2.1.双击”setup.exe”进行安装 软件会加载并初步校验系统是否可以达到了数据库安装的最低配置,如果达到要求,就会直接加载程序并进行下一步的安装; 2.2 在出现的“配置安全更新”窗口中

Windows下PyInstaller的使用教程

直接使用Python开发的软件时有许多不方便的地方,如需要安装特定的Python环境,需要安装依赖库.为了便于部署,需要将Python源代码编译成可执行文件,编译后的可执行文件就能脱离python环境运行了. 安装 将py编译成可执行文件需要使用PyInstaller,需要注意,从百度搜索到的下载链接来自SourceForge,而PyInstaller的开发似乎已经转到Github上去了,因此从SourceForge上下载的版本不是最新的. 目前最新的PyInstaller版本是2.1,最方便的

转-Windows下anaconda简单使用教程

转自:https://www.cnblogs.com/Dota-wiki/p/7871838.html Anaconda is a completely free Python distribution (including for commercial use and redistribution). It includes over 195 of the most popular Python packagesfor science, math, engineering, data anal

linux和windows下安装python拓展包及requirement.txt安装类库

http://blog.csdn.net/pipisorry/article/details/39902327 python拓展包安装 直接安装拓展包默认路径: Unix(Linux)默认路径:/usr/local/lib/pythonX.Y/site-packagesWindows默认路径:C:\PythonXY\Lib\site-packages 測试和升级python拓展安装包pip 查看pip安装时相应的python版本号 which pip /d/python3.4.2/Scripts

64位Windows下安装Redis教程

这篇文章主要介绍了64位Windows下安装Redis教程,本文使用Microsoft Open Tech group 在 GitHub上开发的一个Win64版本的Redis,需要的朋友可以参考下 Redis对于Linux是官方支持的,安装和使用没有什么好说的,普通使用按照官方指导,5分钟以内就能搞定.详情请参考:http://redis.io/download 但有时候又想在windows下折腾下Redis,可以从redis下载页面看到如下提示: 复制代码 代码如下: Win64 Unoffi