2009-11-20 48 views
2

我有一个java webstart程序,它运行在XP,OSX,Vista和Windows 7上。 我只是试图在Windows 7 64位上运行它,它有一个加载库的问题。 在这个win7x64机器上,我有64位jdk/jre,它没有加载的库是swt-win32.dll。没错这就是32位,但我发现:Java加载库的Windows 7 64位

Exception in thread "Thread-10" java.lang.UnsatisfiedLinkError: no swt-win32-3325 or swt-win32 in swt.library.path, java.libary.path or the jar file... 

我试图把该DLL上设置java(物理复制到该文件夹​​),并且仍然得到确切的同样的错误。所以,我得到这个错误,因为它是一个32位的DLL或因为它实际上找不到它?可以64位jdk/jre加载/使用32位dll的还是我需要找到64位版本的dll或运行32位jdk/jre?

回答

3

您已经有答案了。 64位DLL需要64位JDK和32位DLL需要32位JDK。

+0

我发现有关本地库的JDK错误消息并不总是最直观的。我还建议在webstart之外进行测试。 – basszero 2009-11-20 19:25:02

+0

好的,谢谢,那里的错误只是有点误导。 – 2009-11-20 19:25:46

+0

@basszero此测试不属于webstart:/ – 2009-11-20 19:26:42

0

swt-win32.dll其实是一个SWT UI框架(eclipse)dll。尝试将它放在系统路径中的目录中。

如果这不起作用,那么你的下一个最好的选择就是获得64位窗口的SWT二进制文件here。我认为它适用于Windows Vista 64.没有提到Windows 7,但它“应该”的工作。