日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

java linux so

發布時間:2025/3/21 linux 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java linux so 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.確保gcc編譯器已安裝

2.編寫HelloJNI.java代碼,用native聲明需要用C實現的函數。
如果源程序是包含在package里的話,應該建立同樣的文件夾結構,比如/home/swan/test/net/wangliping/HelloJNI.java

package net.wangliping

public class HelloJNI {static{

??????? System.loadLibrary("goodluck");}

??? public native static int get();public native static void set(int i);

??? public static void main(String[] args){HelloJNI test = new HelloJNI();test.set(10);System.out.println(test.get());} }

3.在HelloJNI.java文件所在目錄下編譯.java文件。

javac HelloJNI.java

4.在~/Desktop下編譯第三步中生成的.class文件,生成對應的.h頭文件,本例中生成的頭文件名為 net_wangliping_HelloJNI.h

javah net.wangliping.HelloJNI

5.編寫HelloJNI.c文件,實現引用第4步中生成的.h頭文件,并實現其中聲明的方法。

#include "net_wangliping_HelloJNI.h"

int i = 0;

JNIEXPORT jint JNICALL Java_net_wangliping_HelloJNI_get(JNIEnv *env, jclass jc) {return i; }

JNIEXPORT void JNICALL Java_net_wangliping_HelloJNI_set(JNIEnv *env, jclass jc, jint j) {i = j; }

6.將第5步中編寫的HelloJNI.c文件,編譯成.o文件

gcc -fPIC -D_REENTRANT -I/usr/lib/jvm/java-1.5.0-sun-1.5.0.19/include -I/usr/lib/jvm/java-1.5.0-sun-1.5.0.19/include/linux -c HelloJNI.c

注:/usr/lib/jvm/java-1.5.0-sun-1.5.0.19/include 是jni.h頭文件所在的路徑
/usr/lib/jvm/java-1.5.0-sun-1.5.0.19/include/linux 是jni_md.h所在的路徑

7.將第6步中生成的HelloJNI.o文件編譯成.so庫文件

gcc -shared HelloJNI.o -o libgoodluck.so

注:和windows下不同,linux的庫文件必須是以libxxx.so形式命令的(或者 libxxx.so.y,y是版本號),lib前綴是為了系統能夠識別它,xxx是java代碼System.loadLibrary("xxx");中引用庫的名字。

8.將第7步中生成的libgoodluck.so文件拷貝到java的加載庫LD_LIBRARY_PATH指向的路徑中。
前提是你有足夠的權限,如果沒有sudo權限的同學,用下面的方法:
1) 在/home下建立一個用來存放.so庫文件的目錄,比如/home/swan/lib
2) 把libgoodluck.so文件拷貝到該目錄下
3)打開Terminal,運行如下命令

export LD_LIBRARY_PATH=/home/swan/lib

只在當前shell下有效...

本博主轉燭補充:以下方法可以直接利用絕對路徑來load這個so庫文件,從而無需做上述的放置path或者更改庫路徑的動作。

static {System.load("/home/swan/test/libgoodluck.so"); }

9.在運行HelloJNI.class

java net.wangliping.HelloJNI

一切正常后,可以看到運行結果是輸出了10,其值是由C語言代碼實現并返回的。

原文轉載:http://www.linuxidc.com/Linux/2010-08/27602.htm


總結

以上是生活随笔為你收集整理的java linux so的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕+乱码+中文字幕明步 | 欧美人妻日韩精品 | 麻豆最新网址 | 国产99久久久国产精品免费看 | 亚洲午夜伦理 | 欧美在线91 | 先锋影音av在线资源 | 少妇视频网站 | 三点尽露的大尺度国产 | 欧美日韩亚洲视频 | 天天爽夜夜爽夜夜爽精品视频 | 国产高清视频网站 | 欧美三日本三级少妇三级99观看视频 | 成人免费看片视频 | 亚洲综合专区 | 国产成人精品免费网站 | 男男gay做受xx | 亚洲福利影院 | 国产在线中文字幕 | 亚洲成人久久久 | 国产日韩精品suv | av不卡高清 | 男人的天堂在线观看av | 国产精品免费看片 | 国产一区二区电影 | 天天爱天天做 | 四虎8848| jizzjizz在线 | 国产精品成人久久 | 黄色亚洲视频 | 国产精品久久久久久久久久久久久久久久久 | 三区在线观看 | 91在线视频 | 91精品国产综合久久福利软件 | 成人h片在线观看 | 最好看的中文字幕 | 国产床上视频 | 神马午夜dy888 | 亚洲少妇一区二区 | 男女毛片视频 | 九九热只有精品 | 久久逼逼 | 狠狠搞视频 | 亚洲国产果冻传媒av在线观看 | 伊人久久一区二区 | 黑人极品ⅴideos精品欧美棵 | 免费黄色的网站 | 国产青草视频在线观看 | 人人草人人看 | 最新中文字幕免费视频 | 91丨九色丨蝌蚪丨对白 | 福利视频精品 | 色撸撸av| 日本一区二区在线免费 | 幸福宝在线观看 | 亚洲av无码一区二区三区性色 | 精品福利片 | 日本黄色播放器 | 无码人妻丰满熟妇区bbbbxxxx | 福利视频在线看 | 国产精品入口麻豆九色 | 免费裸体美女网站 | 欧美成人91 | 丰满少妇影院 | 最近中文字幕一区二区 | 色汉综合 | 中文字幕免费看 | 91蝌蚪少妇 | www一区二区三区 | 欧美a在线 | 一级黄色片在线观看 | 欧美黑人性xxx猛交 少妇无套内谢久久久久 | 国产色在线,com | 四虎精品一区二区三区 | 久久久无码18禁高潮喷水 | 香蕉色视频 | 成年人免费观看视频网站 | 白洁av| 国产视频在线观看一区二区 | 91在线视频 | 黄色骚视频 | 亚洲欲妇| 99久久久国产精品无码网爆 | 在线毛片网站 | 久久精品久久久久久 | 99小视频 | 最新一区二区三区 | 欧美人与性禽动交精品 | 能看毛片的网站 | 国产成人精品亚洲男人的天堂 | 乐播av一区二区三区 | 国产成人综合在线视频 | 亚洲va久久久噜噜噜久久天堂 | 黄色片免费在线播放 | 青春草免费视频 | 久久99国产精品久久99果冻传媒 | 精品国产鲁一鲁一区二区三区 | 亚洲制服在线观看 | 中文字幕一区二区三区不卡 |