java使用JNI调用C接口

本文介绍如何在Java中使用JNI(Java Native Interface)调用C接口。首先,创建Java文件`JavaCallC.java`并编译为class。接着,使用javah生成JNI风格的头文件`javaCallC.h`。在Visual Studio中创建项目,配置属性以包含JDK目录,最终生成DLL文件并将其放入JRE的bin目录,以便Java程序运行时能够找到并调用C接口。
摘要由CSDN通过智能技术生成

1.java文件 JavaCallC.java

package callC;

public class JavaCallC {
	static {
//		System.out.println(System.getProperty("java.library.path"));
		System.loadLibrary("JavaCallC");  //此字符串为最后生成的javaCallC.dll的名称,javaCallC.dll要放在jre的bin目录下
	}
	
	public native int StrInIntOut(String str); //将要在C中实现的
	
	public static void main(String[] args) {
		JavaCallC javaCallC=new JavaCallC();
		int a=javaCallC.StrInIntOut("123");
		System.out.println(a);
//		System.out.println("123");
	}
}

然后编译成class文件:

D:\workplace\eclipse\functioncall\src>javac  callC/JavaCallC.java

生成头文件:

D:\workplace\eclipse\functioncall\src>javah -classpath D:\workplace\eclipse\functioncall\src  -d d:/ -jni callC.JavaCallC

其中java中各个命令的意思是

-classpath <路径> 用于装入类的路径
-d <目录> 输出目录
-jn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值