博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个JNI的简单示例
阅读量:5014 次
发布时间:2019-06-12

本文共 908 字,大约阅读时间需要 3 分钟。

      1.编写HelloWorld.java:

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

      2.编译HelloWorld.java:

javac HelloWorld.java

      这将输出HelloWorld.class文件。

      3.创建头文件:

javah -jni HelloWorld

      这将输出HelloWorld.h文件,内容大概是:JNIEXPORT void JNICALL Java_HelloWorld_print (JNIEnv *, jobject);。

      4.编写HelloWorld.c:

#include 
#include
#include "HelloWorld.h"JNIEXPORT void JNICALLJava_HelloWorld_print(JNIEnv *env, jobject obj){ printf("Hello World!\n"); return;}

      5.编译HelloWorld.c:

cc -G -I/java/include -I/java/include/solarisHelloWorld.c -o libHelloWorld.so

      6.运行程序(假设libHelloWorld.so在当前目录):

LD_LIBRARY_PATH=.export LD_LIBRARY_PATHjava HelloWorld或者java -Djava.library.path=. HelloWorld

      程序应该输出:Hello World!。

转载于:https://www.cnblogs.com/frydsh/archive/2013/04/12/3015817.html

你可能感兴趣的文章
转载,gini系数代码对应的公式
查看>>
编译安装mysql-5.6.40
查看>>
年终总结
查看>>
初创互联网公司技术架构变迁之路
查看>>
【BZOJ 3676】 3676: [Apio2014]回文串 (SAM+Manacher+倍增)
查看>>
【网络流24题】No. 13 星际转移问题 (网络判定 最大流)
查看>>
解析$.grep()源码及透过$.grep()看(两次取反)!!的作用
查看>>
[模板] 字符串hash
查看>>
SGU438_The Glorious Karlutka River =)
查看>>
Linux集群及LVS简介
查看>>
简单几何(直线与圆的交点) ZOJ Collision 3728
查看>>
Codeforces Round #327 (Div. 2)
查看>>
如何解决Provisional headers are shown问题(转)
查看>>
开发网站遇到的bug
查看>>
实现简单的接口自动化测试平台
查看>>
EXCEL工作表合并
查看>>
Prime Path
查看>>
ODAC(V9.5.15) 学习笔记(三)TOraSession(2)
查看>>
单纯形法
查看>>
SQL中的replace函数
查看>>