linux java 调用c_Java如何调用C代码--(Linux下实现Java本地方法)

四、书写makefile文件,编译刚才所写的C代码,生成.so文件,Linux环境下(windows,DLL文件)

libMyNative.so:MyNative.o makefile

gcc -Wall -rdynamic -shared -o libMyNative.so MyNative.o

MyNative.o:MyNative.c MyNative.h

gcc -Wall -c MyNative.c -I./ -I/sandbox/Java2S/jdk1.6.0_16/include -I/sandbox/JAVA2S/jdk1.6.0_16/include/linux

cl:

rm -rf *.o *.so

libMyNative.so:MyNative.o makefile

gcc -Wall -rdynamic -shared -o libMyNative.so MyNative.o

MyNative.o:MyNative.c MyNative.h

gcc -Wall -c MyNative.c -I./ -I/sandbox/JAVA2S/jdk1.6.0_16/include -I/sandbox/JAVA2S/jdk1.6.0_16/include/linux

cl:

rm -rf *.o *.so

其中,“/sandbox/JAVA2S/jdk1.6.0_16”为JDK安装目录

“libMyNative.so”是Java类中

static {

System.loadLibrary("MyNative");

}

静态方法中参数+lib

五、修改.bash_profile文件,配置环境变量,由于生成的.so文件在当前目录下,故

.bash_profile文件设置如下

export LD_LIBRARY_PATH=./

六、执行java MyNative命令,结果如下

be9d4cf6d6749bd508adce1222bbe63b.png

Linux下实现Java本地方法(Java调用C)完成。0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值