1.步骤

  1.编写dll文件,放入项目的bin目录(在window上是dll文件,在Linux上是so文件,dll和so都是由C程序生成)
   2.新建接口继承Library
   3.加载对应的dll或者so文件:CLibrary INSTANCE =Native.loadLibrary("hz", CLibrary.class);
   4.声明native方法:void HelloWorld();
   5.调用 :CLibrary.INSTANCE.HelloWorld();

2.一个简单实例

import com.sun.jna.Library;
import com.sun.jna.Native;
import com.sun.jna.Platform; public class HelloWord { public interface CLibrary extends Library{
//加载库
CLibrary INSTANCE =Native.loadLibrary("hz", CLibrary.class);
//声明方法
void HelloWorld();
} public static void main(String[] args) {
//调用
CLibrary.INSTANCE.HelloWorld();
}
}

3.资料整理  

  JNA3.2.7的API:http://api.suwish.com/jna/

  JNA4.4.0的API:http://java-native-access.github.io/jna/4.4.0/javadoc/

  JNA的GitHub:https://github.com/java-native-access/jna

  参数对照表在API中即可查看。

  

最新文章

  1. rman恢复报ORA-27039
  2. 根据配置文件加载js依赖模块(JavaScript面试题)
  3. Web开发中运行环境的配置:(Tomcat7.0.59)和开发环境的配置
  4. JS的prototype的共享机制分析
  5. web前端开发(1)
  6. Web开发的绝美网站
  7. 初学acm感想
  8. Razor 语法快速参考
  9. JAVA责任链设计模式
  10. 【LeetCode】110. Balanced Binary Tree
  11. css相关 细节 优化 备忘
  12. LeetCode(53)-Binary Tree Paths
  13. C#基础加强(5)之装箱与拆箱
  14. IP通信基础课堂笔记----关于数链层
  15. the evolution of Lua 全文翻译
  16. java基础 二进制补码
  17. python序列(列表,元组,字典)的常用排序
  18. mysql 拒绝登录解决
  19. ssh无法访问服务器报“ssh-dss”认证错误
  20. Lintcode: First Bad Version 解题报告

热门文章

  1. codeforces D. Mahmoud and Ehab and the binary string(二分)
  2. CF1029C Maximal Intersection 暴力枚举
  3. django中使用事务以及接入支付宝支付功能
  4. 《Fluent Python》---一个关于memoryview例子的理解过程
  5. 手把手告诉你如何安装多个版本的node,妈妈再也不用担心版本高低引发的一系列后遗症(非常详细,非常实用)
  6. Python作业本——第5章 字典和结构化数据
  7. jvm默认垃圾收集器(JDK789)
  8. length属性、length()方法和size()的方法的区别
  9. Windows10 系统更新之后找不到输入法
  10. ASP.NET Core 2.2 : 二十一. 内容协商与自定义IActionResult和格式化类