易错点
- dll和jdk版本(32位、64位)
- dll的加载路径(找不到指定模块)
- dll的格式(不是有效的win32程序)
步骤
-
下载jna包,存放在项目的一个自定义目录下,如lib
同时下载jna-platform-5.9.0.jar,如果不下载该包,开发时没问题,但打包时会出现“程序包com.sun.jna不存在”,我的项目是这样@
-
设置该目录为Library目录
-
存放dll
我使用JNA遇到的第一个错误就是“找不到指定的模块”,这个错误就和dll的存放有关。dll的存放有多种方式,我测试了两种:
(1)将存放dll的目录设置为resource
这样,在build的时候,dll就会被打包到target/classes目录,而该目录是jna加载dll的默认路径之一。