JNA(Java Native Access )提供一组Java工具类用于在运行期动态访问系统本地库(native library:如Window的dll)而不需要编写任何Native/JNI代码。开发人员只要在一个java接口中描述目标native library的函数与结构,JNA将自动实现Java接口到native function的映射。下面是一段使用该工具的示例代码:

package com.sun.jna.examples;

import com.sun.jna.Library;

import com.sun.jna.Native;

import com.sun.jna.Platform;

/** Simple example of native library declaration and usage. */

public class HelloWorld {

public interface CLibrary extends Library {

CLibrary INSTANCE = (CLibrary)

Native.loadLibrary((Platform.isWindows() ? "msvcrt" : "c"),

CLibrary.class);

void printf(String format, Object... args);

}

public static void main(String[] args) {

CLibrary.INSTANCE.printf("Hello, World\n");

for (int i=0;i < args.length;i++) {

CLibrary.INSTANCE.printf("Argument %d: %s\n", i, args[i]);

}

}

}

java本地方法封装库_JNA-Java本地方法封装库相关推荐

  1. java高级用法之:无所不能的java,本地方法调用实况

    文章目录 简介 JDK的本地方法 自定义native方法 总结 简介 相信每个程序员都有一个成为C++大师的梦想,毕竟C++程序员处于程序员鄙视链的顶端,他可以俯视任何其他语言的程序员. 但事实情况是 ...

  2. 将Java应用程序本地编译为EXE的几种方法

    将Java应用程序本地编译为EXE的几种方法(推荐使用JOVE和JET)   1. 从[url]www.towerj.com[/url]获得一个TowerJ编译器,该编译器可以将你的CLASS文件   ...

  3. Java堆溢出,虚拟机栈和本地方法栈溢出

    Java堆溢出 JVM运行时分区的堆区是占比最大的,它用来存储对象的,每当我们new一个对象,而且要保证这个对象到GC Roots 那些对象是有路径可达的(不可达就有很大可能性被清除),那么当对象的数 ...

  4. java 本地方法栈_JVM学习笔记-本地方法栈(Native Method Stacks)

    本地方法栈(Native Method Stacks)与虚拟机栈所发挥的作用是非常相似的,其区别不过是虚拟机栈为虚拟机执行Java方法(也就是字节码)服务,而本地方法栈则是为虚拟机使用到的Native ...

  5. java 用于xcopy复制_利用xcopy命令实现本地文件复制到远程服务器的方法

    利用xcopy命令实现本地文件复制到远程服务器的方法 更新时间:2013年05月08日 10:52:36   作者: 把本地文件复制到远程服务器:用Xcopy命令可以做到,具体实现如下,感兴趣的朋友可 ...

  6. 【Android FFMPEG 开发】FFMPEG ANativeWindow 原生绘制 ( Java 层获取 Surface | 传递画布到本地 | 创建 ANativeWindow )

    文章目录 I . FFMPEG ANativeWindow 原生绘制 II . FFMPEG 原生绘制流程 III . Java 层获取 Surface 画布 IV . 传递 Surface 画布到 ...

  7. java实现多文件上传至本地服务器

    转载自  java实现多文件上传至本地服务器 博主最近在做一个内网项目,内部可以访问外部数据,但是外部访问不了内部数据,这也就造成了可能文件无法上传,所以博主另辟蹊径,在本地服务器上建立一个文件夹专门 ...

  8. Java 8 Friday Goodies:轻松派本地缓存

    在Data Geekery ,我们喜欢Java. 而且,由于我们真的很喜欢jOOQ的流畅的API和查询DSL ,我们对Java 8将为我们的生态系统带来什么感到非常兴奋. 我们已经写了一些关于Java ...

  9. 简易的本地音乐播放器 适用于Java初学者

    简易的本地音乐播放器 适用于Java初学者 我知道肯定会有人说都1202年了怎么还有人在用AudioClip,没有别的原因,因为我也刚学Java,刚好看到一个这样的教程就刚好写了一个这样的播放器. 我 ...

  10. 根据变量推断变量类型_11位专家参与其中:本地变量类型推断是Java 10中最大的新功能

    根据变量推断变量类型 " Java 10不仅是对Java 9的简单稳定性和性能修复," 尽管Java 9是六个月前才发布的( 仅! ),这意味着对Java 10的期望可能不是很高, ...

最新文章

  1. 深度解析】Google第二代深度学习引擎TensorFlow开源(CMU邢波独家点评、白皮书全文、视频翻译)
  2. 深入理解JavaScript系列(3):全面解析Module模式
  3. 来自长辈的5句教导!
  4. 【Python】Jupyter Notebook的十大隐藏技巧--如何大大加速算法的迭代
  5. 一个机械系毕业生的感言
  6. url与uri的区别
  7. 虚拟机环境下安装ESX不能安装虚拟系统解决方案
  8. 高性能mysql 聚簇索引,高性能MySQL笔记-第5章Indexing for High Performance-005聚集索引...
  9. 前端学习(8):HTML的基本属性和结构
  10. MSSQL 2005数据库与SP4补丁安装
  11. jQuery之防止【冒泡事件】,阻止默认行为 【return false】 event.stopPropagation event.preventDefault...
  12. 微信分享链接,如何自定义图片,标题,内容介绍
  13. 火眼公司发布公开漏洞奖励计划
  14. mysql日志课程_【mysql课程七】 MySQL日志管理
  15. VS生成dump文件和调试dump文件
  16. PSpice添加SPICE模型
  17. 写一份竞品分析文档的思路(模板)
  18. 麦当劳中国首个IT战略研发中心在南京启用;大食代积极布局中国西南市场 | 美通企业日报...
  19. eTerm放大/PID放大软件众多,如何选择
  20. 【软件安装使用】pano2vr教程

热门文章

  1. 如何用 OpenCV、Python 和深度学习实现面部识别?
  2. 基于投票方式的机器人装配姿态估计
  3. 链表问题20——按照左右半区的方式重新组合单链表
  4. Altium Designer笔记2
  5. FFmpeg常用命令总结
  6. spark-shuffle分析
  7. 运行BU,利用矿工投票机制寻求BCH升级方案
  8. 利用curl下载文件(进度条显示) 代码片段
  9. 编译GCC4.8.2
  10. Unity用UGUI做虚拟摇杆