美文网首页
Java 使用dll动态链接库(native使用)

Java 使用dll动态链接库(native使用)

作者: Zn_go | 来源:发表于2019-08-05 12:03 被阅读0次

编译环境:https://sourceforge.net/projects/orwelldevcpp/
gcc:64位

Hello.java

public class Hello
{
    static
    {
        System.loadLibrary("Hello");
    }
     
    public static native void sayHello();
     
    @SuppressWarnings("static-access")
    public static void main(String[] args)
    {
        new Hello().sayHello();
    }
}

命令行命令

javac Hello.java
javah Hello

hello.h

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class Hello */

#ifndef _Included_Hello
#define _Included_Hello
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     Hello
 * Method:    sayHello
 * Signature: ()V
 */
JNIEXPORT void JNICALL Java_Hello_sayHello
  (JNIEnv *, jclass);

#ifdef __cplusplus
}
#endif
#endif

hello.c

#include "Hello.h"
#include <stdio.h>
 
JNIEXPORT void JNICALL Java_HelloNative_sayHello() 
{
    printf("Hello,zn");    
}

进行编译,生成dll文件

注:dll文件需要是64位的

运行hello.class
结果如下:


结果

相关文章

网友评论

      本文标题:Java 使用dll动态链接库(native使用)

      本文链接:https://www.haomeiwen.com/subject/tcppdctx.html