小伙伴们,对于学习JAVA的你来说,可能JNI是十分陌生的,因为在传统的JAVA课程中,很少会有JNI的讲解,由于使用到JNI的知识,于是开始查阅资料,学习了一番,文本不讲解如何开发,只是简单的介绍一下如何使用JNI的流程。
首先,你现在手头上肯定会有两个文件,一个是以.dll结尾的一个动态链接库,另外一个是JAVA文件xxx.java 文件 .
我们打开Reader18.java 文件你可以看到在Java文件中有若干个public native 开头的方法 。
package UHF;
public class TestJNI {
public native int sayHello();
public native int sayHi();
public native int say();
....
}
这就是传说中的借口,其中.dll文件一般为 C/C++所写 。今天我们不讲解如何开发.dll借口,我们只实现java的调用,或许你会说JAVA类谁不会用呀。可是在调用Java类中,你需要有几个注意的东西。
如果说只是一个普通的JAVA类,那么大家都知道如何去调用say方法,但是这是一个接口,就需要做一下几个步奏 .
1、使用System.loadLibrary()方法引用动态链接库
public static void main(String[] args) {
System.loadLibrary("UHF_Reader18"); //引用动态链接库
TestJNI jni = new TestJNI();
jni.say();
}
2、加载动态链接库到环境变量中
将存放.dll文件的文件夹目录设置到环境变量中
如果你使用eclipse/myeclipse 你只需要设置一下步奏
打开BUILD PATH
点击Native library location --> edit
选择存放.dll文件的路径 -->点击OK
最后一步就是测试了,祝您成功。