我正在尝试将JNA设置为与我已有的自定义DLL对话,但无济于事
它一直说它正在查找lcoation /target/classes/中的资源路径
我想知道是否有可能添加一个资源位置,在那里它可以拾取我的DLL?
我的代码如下
System.setProperty("jna.debug_load", "true");
System.setProperty("jna.debug_load.jna", "true");
System.setProperty("jna.platform.library.path", "C:\\Development\\dll\\");
Native.loadLibrary("customDLL", CustomDLL.class);如果我手动将dll添加到文件夹/target/classes/,则DLL会按预期加载
我用的是32位的1.7.0_65,32位的JNA 4.1.0
非常感谢您的任何帮助。
谢谢达米恩
发布于 2014-08-01 01:15:20
JNA在系统属性jna.library.path指定的位置进行查找,否则会回退到java.library.path中的任何路径(这主要是基于环境中的PATH设置的)。
您应该确保eclipse将DLL复制到应用程序最终希望找到它的任何位置,并确保eclipse在启动JVM时正确地将jna.library.path设置为该位置。
另请注意,任何依赖库都必须位于PATH上或与目标DLL位于同一目录中。
有关JNA可以加载本地库的其他变体,请参阅JavaDoc for NativeLibrary。
https://stackoverflow.com/questions/25063614
复制相似问题