zoukankan      html  css  js  c++  java
  • jni使用步骤

    1、编写带有native 声明的方法的java 类

    class HelloWorld {
    public native void displayHelloWorld();
    static {
    System.loadLibrary("hello");
    }
    public static void main(String[] args) {
    new HelloWorld().displayHelloWorld();
    }


    2、使用 javac 命令编译所编写的java 类

    javac HelloWorld.java


    3、使用 “ javah -jni java 类名” 生成扩展名为h 的头文件

    javah -jni HelloWorld,生成的头文件中会有这样一句话JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld (JNIEnv *, jobject);

    也就是说我们在编写C/C++程 序的时候所使用的方法名必须和这里的Java_HelloWorld_displayHelloWorld一致。

    4、使用 C/C++实现本地方法

     #include "jni.h"   //需要将jni.h(该文件可以在%JAVA_HOME%/include文件夹下面找到)文件引入
     #include "HelloWorld.h"
     //#include other headers
     JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld(JNIEnv *env,jobject obj)
    {
       printf("Hello world!\n");
       return;
    }

    //然后保存为 HelloWorldImpl.c 就ok 了

    5、将C/C++编写的文件生成动态连接库

    6、运行

    java HelloWorld

  • 相关阅读:
    【笔记】隐式寻址方式(pending...)
    【笔记】有结构文件(pending...)
    【笔记】目录项(pending...)
    【笔记】主存储器
    Ubuntu 16.04 升级OpenSSH至7.7p1
    awk用法笔记
    find命令笔记
    VIM的使用
    Shell
    Linux文本处理三剑客
  • 原文地址:https://www.cnblogs.com/wyqfighting/p/2768483.html
Copyright © 2011-2022 走看看