我正在尝试加载一个本地库,相应地加载一个原始的dll。但是在另一台运行XP 32bit的计算机上,它运行正常。在win7 64位系统上执行时,无法加载。在xp机器上,dll文件可以与类文件位于同一目录中,但是为了不会得到不满意的链接错误,我不得不将文件复制到system32文件夹中。然后它给出了一个错误,指出无法在64位进程上加载32位dll。我下载了32位jdk并在项目中设置jdk以加载32位jdk。当它完成后我再次得到一个不满意的链接错误,文件仍然在system32以及类文件旁边。我很困惑为什么它在使用64位jdk时会找到库而不会在32位jdk中。
...
static {
System.loadLibrary("K8055jni");
}
Exception in thread "main" java.lang.UnsatisfiedLinkError: no K8055jni in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
at java.lang.Runtime.loadLibrary0(Runtime.java:845)
at java.lang.System.loadLibrary(System.java:1084)
at K8055jni.<clinit>(K8055jni.java:50)
at Test.main(Test.java:4)
如何让32位jdk找到相同的文件?