Java Web Start和64位JVM

时间:2016-12-15 15:52:36

标签: java jnlp

我有一个SWT Java应用程序,我试图通过Java Web Start启动。 32位版本运行良好,但许多人无法启动64位版本。他们得到一个错误,说不能在32位JVM上运行64位库。我搜索了Google和StackOverflow以及其他人,无法找到有关如何让Web Start在64位JVM中启动的答案。

我尝试过使用JVM选项(-d64,-J-d64),但没有任何运气。

这是否可能,或者我只是限制为32位版本(理想情况下64位是最好的,因为这个应用程序将解析日志文件中的大量数据以便干净地显示)?我需要在JNLP中更改哪些内容才能使其正常工作?

let byte : UInt8 = 0xF3 //Should become "F3"

1 个答案:

答案 0 :(得分:4)

您可以创建一个支持这两种体系结构的jnlp文件。例如:

<resources arch="amd64 x86_64">
  <jar href="LogMiner64.jar"/>
</resources>

<resources arch="x86 i386">
  <jar href="LogMiner32.jar"/>
</resources>

如果有必要,资源标记也可以采用os属性,如os="Linux"os="Mac"os="Windows"

通过这种方式,无论用户使用何种操作系统和体系结构,您都可以使用单个jnlp文件来执行与本机库相关的正确操作。

另见How to distinguish 32 bit from 64 bit java version in jnlp files