在Linux中,Java程序可以通过JNI(Java Native Interface)来调用C程序的方法。
Linux系统环境,Java调用C的主要流程如下:
1、创建Java类文件,如NativeLibrary.java
2、编写Java代码,加载.so共享库(C程序生成该名称的.so共享库),并声明本地方法
3、使用javac编译Java类,生成.class文件
4、使用javah对.class文件生成C头文件,该文件包含了Java和C之间通信所需的函数声明
5、创建C语言源文件,如NativeLibrary.c
6、编写C程序代码并实现要被Java调用的方法
7、使用gcc编译C程序和C头文件生成动态链接库(共享库.so文件)
8、运行Java程序,并调用C程序中的方法
1、Java类文件
创建NativeLibrary.java文件,内容如下:
public class NativeLibrary {
static {
System.loadLibrary("mylib"); // 加载名为"mylib"的共享库
}
public native vo