暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Java如何调用C程序,JNI技术

追风人聊Java 2021-09-15
414

Java为什么要调用C语言编写的程序


因为涉及操作系统底层的事件,Java是处理不了的,例如用户上传一个视频文件,需要后台给视频加上水印,或者后台分离视频流和音频流,这个事Java就做不了,只能交给C语言去处理,然后Java调用C语言的接口。


使用Java如何去调用C语言的接口呢?

使用Java的JNI技术。


具体调用步骤

CentOS7环境下


首先创建Java文件 HelloJni.java ,并创建native方法



编译Java文件并生成java头文件


javac -d . HelloJni.java
 // 生成class文件
javah -jni com.hongyu.jni.HelloJni
 // 生成java头文件 com_hongyu_jni_HelloJni.h



创建C语言文件,HelloWorld.c


生成动态链接库文件 libhello.so


设置动态链接库文件的目录


打开文件:

修改文件:

刷新文件:


把刚才生成的so文件拷贝到/home/lib下,然后执行class文件


大功告成!Java成功调用了C语言编写的逻辑







文章转载自追风人聊Java,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论