在64位操作系统窗口上链接32位本机语言DLL

时间:2012-09-19 09:55:51

标签: java dll 32bit-64bit

我试图在64位虚拟机Windows 7上使用java程序来处理视频。这个java程序使用32位dll。 根据{{​​3}},我安装了一个32位的jvm,根据 this post,我将dll放在C:\WINDOWS\SysWOW64目录中。

我通过指定可执行文件的完整路径C:\Program Files (x86)\Java\jre7\bin\java.exe在命令提示符下运行程序。 java程序正常运行,但是当使用dll提供的功能时,我收到错误消息java.lang.UnsatisfiedLinkError

感谢您的任何建议

1 个答案:

答案 0 :(得分:1)

UnsatisfiedLinkError表示Java无法找到DLL。

确保包含DLL的目录位于java.library.path中。您可以在启动程序时使用-D开关在命令行上将其指定为系统属性来设置此路径。例如:

java -Djava.library.path=C:\WINDOWS\SysWOW64 com.mypackage.MyMainClass