我正在开发一个Windows应用程序。
我需要为此创建一个安装程序(32位和64位Windows操作系统的通用安装程序),因为我使用的是Install4J软件。
我在Windows 32位,jdk 1.7开发。
安装程序在32位Windows操作系统中工作正常,但是当我尝试在win 64位操作系统中创建安装程序时,它会给我一个错误,如java.lang.UnsatisfiedLinkError:无法在64位JVM上加载32位SWT库
请帮助解决这个问题..
答案 0 :(得分:2)
问题是32位和64位Windows JVM有单独的“swt.jar”文件,它们不可互换。您不能在64位Windows JVM上使用32位Windows JAR ......或者相反。 (AFAIK,基本障碍在于Windows和JVM而不是SWT。)
一种可能性是做一些类加载器技巧,并根据应用程序在运行时检测到的平台动态选择不同的JAR。安装程序需要使用不同名称的SWT JAR两种风格。
答案 1 :(得分:0)
那么这只是因为当你将程序文件安装到只安装32的程序文件中时会加载32位库,所以你可以做一件非常简单的解决方案,只需在{{ 1}}
对我有用,也可能对你有用。