JNI简易使用之使用vs命令提示下创建DLL详解

这篇博客介绍了如何在Java中使用JNI,通过VS命令提示符创建DLL。步骤包括:编写Java类,使用javac和javah生成头文件,用C/C++实现本地方法,编译生成DLL,并在Java程序中加载。重点关注了命令行参数的使用,如-I, -LD等,并提到了可能遇到的路径和环境变量问题。" 108750852,9787880,最近公共祖先(LCA)算法与倍增技巧解析,"['算法', '数据结构', '图论', '树', '动态规划']
摘要由CSDN通过智能技术生成
JNI是Java Native Interface的缩写,中文为JAVA本地调用。从Java1.1开始,Java Native Interface(JNI)标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他语言,只要调用约定受支持就可以了。 
定义 
使用java与本地已编译的代码交互,通常会丧失平台可移植性。但是,有些情况下这样做是可以接受的,甚至是必须的,比如,使用一些旧的库,与硬件、操作系统进行交互,或者为了提高程序的性能。JNI标准至少保证本地代码能工作在任何Java 虚拟机实现下。 
 设计目的 
标准的java类库可能不支持你的程序所需的特性。或许你已经有了一个用其他语言写成的库或程序,而你希望在java程序中使用它。你可能需要用底层语言实现一个小型的时间敏感代码,比如汇编,然后在你的java程序中调用这些功能。 


具体步骤  
  • 编写带有native声明的方法的java类
  • 使用javac命令编译所编写的java类
  • 使用javah -jni java类名生成扩展名为h的头文件
  • 使用C/C++实现本地方法
  • 将C/C++编写的文件生成动态连接库
  • 导入DLL,运行程序

1.编写带有native声明的方法的java类 
Java代码 
  1. package jav.test.jni;  
  2.   
  3. public class NativeTest {  
  4.   
  5.     public static native void getHelloNative();  
  6.       
  7.     static{  
  8.         System.loadLibrary(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值