1、创建 一个包含native方法的类
public class HelloWorld {
/**
* Declare native method
*/
private native void displayHelloWorld();
/**
*
* Static piece
*/
static{
System.loadLibrary("hello") ;
}
/**
* Main test
* @param args
*/
public static void main(String[] args){
HelloWorld hw = new HelloWorld() ;
hw.displayHelloWorld();
}
}
2、javac 编译成class文件
3、javah -classpath . -jni cn.jni.HelloWorld 编译成h头文件
cn_jni_HelloWorld.h
内容如下:
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class cn_jni_HelloWorld */
#ifndef _Included_cn_jni_HelloWorld
#define _Included_cn_jni_HelloWorld
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: cn_jni_HelloWorld
* Method: displayHelloWorld
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_cn_jni_HelloWorld_displayHelloWorld
(JNIEnv *, jobject);
#ifdef __cplusplus
}
#endif
#endif
4、 用C/C++实现上方法 Java_cn_jni_HelloWorld_displayHelloWorld(JNIEnv *, jobject)
实现如下:
#include <jni.h>
#include <cn_jni_HelloWorld.h>
#include <stdio.h>
JNIEXPORT void JNICALL Java_cn_jni_HelloWorld_displayHelloWorld(JNIEnv *env, jobject obj){
printf("Hello World! My Java native interface test success\n");
return ;
}
【注意】jni.h (java安装路径下:D:\Program Files\Java\jdk1.6.0_03\include目录下)复制到vc安装目录下的include目录下
同时将D:\Program Files\Java\jdk1.6.0_03\include\win32目录下的 jawt_md.h、jni_md.h也复制到vc安装目录下的include目录下
利用vc工具编译成hello.dll文件
5、将生成的hello.dll文件复制到:C:\WINDOWS\system32
6、运行HelloWorld
分享到:
相关推荐
JNI(java native interface) 简体中文:do.chuan@gmail.com 翻译版 英文版:Addison.Wesley.Java.Native Interface 希望对大家有帮助...
### JNI(Java Native Interface)中文手册关键知识点解析 #### 一、前言及背景 JNI(Java Native Interface)是Sun Microsystems公司定义的一套标准接口,用于实现Java代码与本地代码(通常是C或C++)之间的交互。...
Java Native Interface(JNI)是Java平台的一个重要组成部分,它允许Java代码和其他语言写的代码进行交互。这个"Java Native Interface Programmers Guide and Specification(Exp)"很可能是一份详细解释JNI编程指南...
Java Native Interface(JNI)是Java开发中的一个重要概念,它允许Java代码与其他语言编写的代码进行交互,尤其是与C或C++编写的本地应用程序接口(API)进行交互。JNI在Java应用程序中扮演着桥梁的角色,使得Java...
### JNI - Java Native Interface 资料精粹 #### 引言 Java Native Interface (JNI) 是Java平台的一项强大特性,允许应用程序结合使用C、C++等其他编程语言编写的本地代码以及Java语言代码。这一功能让程序员能够...
根据提供的文件信息,我们可以深入探讨Java Native Interface (JNI)的相关知识点。JNI是一种强大的工具,它允许Java代码与其他语言编写的程序进行交互,特别是在C和C++等原生代码层面上。接下来,我们将从多个角度来...
《Java Native Interface程序员指南与规范》是一本深入探讨Java平台如何与本地代码交互的重要书籍。Java Native Interface(JNI)是Java平台的一个核心组件,它允许Java应用程序调用其他编程语言编写的函数,或者让...
JNI(Java Native Interface)是一种编程框架,它允许Java代码和其他语言写的代码进行交互。JNI在Java的本地方法接口(Native Method Interface,NMI)基础上发展而来,最初随着Java开发工具包(JDK)1.0发布,后...
Java Native Interface(JNI)是Java平台的一项重要技术,它允许Java代码与使用其他编程语言(如C、C++等)编写的代码进行交互。在Android开发中,JNI尤为重要,因为它使开发者能够在Java层调用C或C++编写的高性能...
Java Native Interface Specification-JDK1.6,内有一些实例代码,
Java Native Interface(JNI)是Java平台的一个编程接口,它允许Java代码和其他语言编写的代码进行交互。这种交互通常指的是Java调用C/C++代码和C/C++调用Java代码两种形式。JNI作为Java语言的一种扩展技术,它对...
THIS book covers the Java™ Native Interface (JNI). It will be useful to you if you are interested in any of the following: • integrating a Java application with legacy code written in languages such...
JNI,全称Java Native Interface,是Java平台的一部分,用于建立Java应用和本地代码之间的桥梁。通过JNI,Java开发者可以编写本地方法,这些方法可以在Java虚拟机(JVM)内部调用,但实际由本地代码实现。这使得Java...
THIS book covers the Java™ Native Interface (JNI). It will be useful to you if you are interested in any of the following: • integrating a Java application with legacy code written in languages such...
Java本地接口指引与规范(JNI官方版本),带完整书签页。 文档包括3个部分: 1.Introduction and Tutorial(简介与教程); 2.Programmer`s Guide(程序员指南); 3.Specification(规范) 适用于JNI开发的开发人员使用。
Java Native Interface(JNI)是Java平台的一个重要组成部分,它的主要功能是允许Java代码与本地(非Java)代码进行交互,通常这些本地代码是由C、C++或其他编程语言编写的。JNI提供了一种桥梁,使得Java应用程序...
JNI调用的参考文档 官方文档整理成CHM版 相信是做java本地调用的时候必备的参考手册
Java Native Interface(JNI)是Java平台的标准组成部分,它允许Java代码和其他语言写的代码进行交互。JNI在许多场景下都是至关重要的,比如访问操作系统特定的功能、使用C/C++库或者优化性能敏感的部分。本完全手册...