我在通过Java Webstart运行Java RCP应用程序时遇到问题.
这适用于团队中的其他人,但不适合我. (难道你不喜欢那些问题)
我认为问题是它正在下载32位版本的应用程序,而不是64位.
当我查看机器上的webstart .log文件时,我可以看到以下内容.
!SESSION 2012-07-06 16:24:37.672 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_32
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
所以我认为问题是OS-win32,WS = win32.
我的机器是Windows 7 64位.
有没有人对我应该如何进行有任何想法?
解决方法:
引导加载程序常量似乎具有误导性,因为在打印运行webstart的JVM报告的环境变量时:
操作系统:Windows 7
Arch:amd64
我们将问题跟踪到相关的SWT罐子,因为没有下载用户环境(为了增加乐趣,这是通过webstart部署的RCP应用程序).
在相关的jnlp文件中,我们有以下部分:
<resources os="Windows" arch="x86">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_${org.eclipse.swt.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_64_${org.eclipse.swt.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="x86">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_${org.eclipse.equinox.launcher.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_${org.eclipse.equinox.launcher.win32.win32.x86.version}.jar"/>
</resources>
对于大多数人来说这很好,因为32位jre会下载x86架构的资源,一切都很好.
David的机器上的问题是运行64位JVM,它报告arch属性被报告为amd64而不是x86_64(尽管它是Intel cpu).
将资源部分更改为如下所示可解决此问题:
<resources os="Windows" arch="x86">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_${org.eclipse.swt.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_64_${org.eclipse.swt.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="amd64">
<jar href="plugins/org.eclipse.swt.win32.win32.x86_64_${org.eclipse.swt.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="x86">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_${org.eclipse.equinox.launcher.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_${org.eclipse.equinox.launcher.win32.win32.x86.version}.jar"/>
</resources>
<resources os="Windows" arch="amd64">
<jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_${org.eclipse.equinox.launcher.win32.win32.x86.version}.jar"/>
</resources>