我已经建立了一个无头构建环境来构建我们的Windows 32和64位RCP产品。我的问题是64位版本缺少SWT插件,在我手动复制SWT插件之前,应用程序才会启动。
在日志文件中可以找到此例外:
Caused by: java.lang.ClassNotFoundException: org.eclipse.swt.SWTError
查看64位构建的插件目录,我发现org.eclipse.swt_3.6.2.v3659c.jar
不包含任何类文件,只包含清单和一些文件。
要正确使用SWT,插件目录中还必须存在另一个插件 - org.eclipse.swt.win32.win32.x86_64_3.6.2.v3659c.jar
此插件包含64位特定代码和/或资源。
此插件的32位版本添加到32位版本,但不添加到64位。
所以现在的问题是 - 为什么不呢?