我有一个JNLP applet,它运行在安装了32位和64位JVM的64位计算机上。 JNLP必须在64位JVM上运行才能正确执行。有没有办法强制使用64位JVM?
答案 0 :(得分:1)
使用-d64
VM选项仅允许虚拟机以64位开始。其他方式很简单,无法启动。不友善,但要完成工作。在控制台模式下打印:
Error: This Java instance does not support a 32-bit JVM.
Please install the desired version.
自1.5.0起支持 -d64
答案 1 :(得分:0)
见这里:How can I tell if I'm running in 64-bit JVM or 32-bit JVM (from within a program)?
您可以使用它来检测64位JVM,如果不是,则显示错误消息。
答案 2 :(得分:0)
如果使用64位浏览器,则使用64位JVM。如果您使用32位浏览器(现在大多数浏览器都是默认浏览器),则使用32位JVM。所以例如firefox和chrome只有32Bit版本(当然有test / develop版本,但没有官方版本。 Microsofts IE是少数offering两个版本之一。
您无法确保jnlp将在64位环境中运行。但是,您可以在applet代码中确保在适当的环境中启动:
String architecture = System.getProperty("os.arch");
if(architecture.equals("i386") || architecture.equals("i686")){
architecture = "x86";
}
else if(architecture.equals("amd64") || architecture.equals("universal")){
architecture = "x86_64";
}