我试图在科学的Linux 6.4(64位)计算机上运行Java SWT应用程序。它产生了一个BAD Magic Number,所以我决定尝试使用一个简单的Java应用程序,并得到相同的结果。
使用仅显示Shell的SWT代码段。我在eclipse中使用(oracle的JDK 1.0.7U45 32位)编译应用程序并在我的32位Windows机器上运行它。该应用程序使用了eclipse for windows中提供的32位swt.jar文件。
所以,我把这个简单的Java应用程序移到我的SL6.4计算机上,该计算机安装了gnome。然后,用eclipse中提供的on替换swt.jar(swt-4.2.2-gtk-linux-x86_64.zip)。 尝试运行此应用程序时,它返回“无效文件(错误的幻数):执行格式错误”。无论是尝试使用OpenJDK 64位服务器VM(1.7.0_51)还是Oracle的64位服务器VM(1.7.0_45-b18)运行它,都会产生相同的结果。
我必须在安装中遗漏一些简单的东西。
发现问题...使用分号而不是冒号作为类路径分隔符。