我有一个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"
答案 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