如何在32位和64位系统上运行我的exe Java应用程序?

时间:2016-12-29 02:23:26

标签: java windows exe 32bit-64bit packaging

我在Windows上使用JDK 64位编译了我的java应用程序,然后使用Excelsior Jet 11.3(64位)打包JAR文件,为我提供了一个优雅的exe可执行文件,可供运行Windows的最终用户使用。

exe文件在我的机器上工作得很好(Windows 7 64位)但是当我部署到其他32位系统(windows xp& windows 7)时,它不起作用,它显示错误消息说exe不被识别为有效的32位程序。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:4)

  

我该如何解决这个问题?

那么,分发Java(JAR文件,WebStart等)的标准方法可以避免这种情况,因为字节码与平台无关。您故意选择分发EXE文件,这些文件本身就是特定于平台的。

如果你想坚持使用EXE,可以考虑两种选择:

  • 为您需要支持的每个OS +硬件平台组合构建和分发不同的EXE。 (32个Windows,64位Windows,各种MacOS,Intel上的Linux,ARM上的Linux,Solaris等)

  • 选择最低公分母;例如32位Windows EXE 应该可以在64位Windows操作系统上运行。

但我建议让用户安装JRE,或者提供安装嵌入式JRE的安装程序。