jna找不到dll文件的问题
在exlipse里需要利用jna调用一个dll文件,使用Native.loadLibrary("TKSKEncLib",**.class)加载库。 如果是第一个参数写绝对路径的话,可以运行。但是我把第一个参数改为相对路径就会总是提示
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'TKSKEncLib.dll': ???????¨
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:155)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:216)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:191)
at com.sun.jna.Library$Handler.<init>(Library.java:131)
at com.sun.jna.Native.loadLibrary(Native.java:279)
at com.sun.jna.Native.loadLibrary(Native.java:265)
at ceshi.JiamiJnaTest$TKSKENCLIB.<clinit>(JiamiJnaTest.java:11)
at ceshi.JiamiJnaTest.main(JiamiJnaTest.java:29)
工作目录是E:\workspace
将 dll文件在E:\workspace 、E:\workspace\test 、E:\workspace\test\ceshi (class位置) 还有环境变量path 和 C:\WINDOWS 、C:\WINDOWS\system32 里都放了一遍 还是不行.
哪位大侠知道到底是什么原因? dll文件具体应该放到什么地方?
谢谢~
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'TKSKEncLib.dll': ???????¨
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:155)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:216)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:191)
at com.sun.jna.Library$Handler.<init>(Library.java:131)
at com.sun.jna.Native.loadLibrary(Native.java:279)
at com.sun.jna.Native.loadLibrary(Native.java:265)
at ceshi.JiamiJnaTest$TKSKENCLIB.<clinit>(JiamiJnaTest.java:11)
at ceshi.JiamiJnaTest.main(JiamiJnaTest.java:29)
工作目录是E:\workspace
将 dll文件在E:\workspace 、E:\workspace\test 、E:\workspace\test\ceshi (class位置) 还有环境变量path 和 C:\WINDOWS 、C:\WINDOWS\system32 里都放了一遍 还是不行.
哪位大侠知道到底是什么原因? dll文件具体应该放到什么地方?
谢谢~
...全文
相关推荐
java使用jna调用c#中dll的方法详解
在执行Java代码时,可能会遇到“无效的内存访问”错误,这通常是因为Java找不到C#的.dll或者两者之间的调用配置不正确。
jna调用dll所需jar包
错误处理和异常:JNA会自动处理一些常见的错误,如找不到函数或库。但是,对于更复杂的错误,你可能需要检查返回值或通过其他方式捕获异常。
dll方法查看工具
**调试和问题排查**:如果在JNA调用中遇到问题,如找不到函数或参数传递错误,查看DLL的方法可以帮助定位问题所在。4.
VC环境依赖
本文将深入探讨这个问题,以及如何解决"VC环境依赖"。首先,"找不到模块"错误通常意味着系统无法定位到DLL文件,这可能是因为DLL本身不存在于系统路径中,或者依赖的其他库文件缺失。
JNADemo-master.zip
- **异常处理**:由于本地调用可能会抛出异常,例如找不到DLL或函数签名不匹配,需要适当地捕获和处理。


Java SE
