一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專(zhuān)注于服務(wù)器技術(shù)及軟件下載分享
分類(lèi)導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語(yǔ)言 - JAVA教程 - Ubuntu 使用Jni開(kāi)發(fā)實(shí)例詳解

Ubuntu 使用Jni開(kāi)發(fā)實(shí)例詳解

2020-06-27 12:40Java教程網(wǎng) JAVA教程

這篇文章主要介紹了Ubuntu 使用Jni開(kāi)發(fā)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下

1. 編寫(xiě)Java文件,在其中聲明native方法, 并通過(guò)static 語(yǔ)句塊加載動(dòng)態(tài)鏈接庫(kù),示例Prompt.java代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
class Prompt {
  private native String getLine(String prompt);
 
  public static void main(String args[]) {
    Prompt p = new Prompt();
    String input = p.getLine("Type a line: ");
    System.out.println("User typed: " + input);
  }
 
  static {
    System.loadLibrary("Prompt");
  }
}

2.調(diào)用javac命令生成Prompt.class文件;

javac Prompt.java

3.調(diào)用javah命令生成Prompt.h頭文件供C程序引用:

javah -jni Prompt

自動(dòng)生成的頭文件如下:

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

4.編寫(xiě)Prompt.c文件實(shí)現(xiàn)具體功能:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <jni.h>
#include <stdio.h>
#include "Prompt.h"
 
JNIEXPORT void JNICALL
Java_Prompt_getLine(JNIEnv *env, jobject obj, jstring prompt)
{
  char buf[128];
  const jbyte *str;
  str = (*env)->GetStringUTFChars(env, prompt, NULL);
  if(str == NULL) {
    return NULL;   
  }
  printf("%s", str);
  (*env)->ReleaseStringUTFChars(env, prompt, str);
  scanf("%s", buf);
  return (*env)->NewStringUTF(env, buf);
}

5. 編譯動(dòng)態(tài)庫(kù)libPrompt.so;

gcc -shared -fpic -I/usr/lib/jvm/java-6-sun-1.6.0.26/include -I/usr/lib/jvm/java-6-sun-1.6.0.26/include/linux Prompt.c -o libPrompt.so

6. 運(yùn)行。

java Prompt

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 韩国激情网 | 欧美亚洲视频在线观看 | 国产精品永久免费10000 | 午夜大片在线观看 | 99视频网址 | 亚洲精品国产精品麻豆99 | 给我免费观看的视频在线播放 | 四虎影视免费观看免费观看 | 91久久线看在观草草青青 | 青青青在线视频播放 | 国产精品视频一区二区三区 | 波多野结衣在线观看视频 | 极品美女穴| 国产青青草 | 久久久免费观看 | 欧美理论片手机在线观看片免费 | 欧美一区高清 | 亚洲国产免费 | 亚洲偷窥图区色 | 成年无限观看onlyfans | 成人在线视频观看 | 国产精品久久久久久影院 | 男女肉粗暴进来下面好紧 | 久见久热 这里只有精品 | 日韩欧美推理片免费在线播放 | 欧美一二 | 极品主播的慰在线播放 | 60岁妇女毛片免费观看 | 精品福利视频一区二区三区 | 国产自精品 | wc凹凸撒尿间谍女厕hd | 高h短篇合集 | 色综久久天天综合绕视看 | www.com在线观看 | 3d动漫美女物被遭强视频 | 精品亚洲综合久久中文字幕 | 香蕉国产精品偷在线播放 | 高清日韩在线 | 国产成人精品在线观看 | 亚洲看片lutube在线入口 | 日韩aⅴ在线观看 |