我有一个关于32位和64位版本Eclipse之间差异的快速问题。我需要知道实际下载之间的差异,而不是性能差异或类似的差异。
我的情况是这样的:我使用64位Eclipse为Eclipse项目(Java)建立了一个开发环境,在Subversion中对文件进行了版本化,并在我们必须在32位操作系统上开发之后找到了因为该项目其他部分的限制。而不是必须下载和设置一个完整的不同Eclipse实例,它是否就像用32位版本替换启动Eclipse的EXE一样简单?或者是否有其他文件需要替换?
答案 0 :(得分:16)
让Eclipse在64位JVM中运行。安装32位JVM并配置项目以使用该32位JVM。
在Eclipse中开发程序时,请记住有IDE,然后是正在编写的程序。 Eclipse没有要求启动与IDE在同一JVM中编写的程序。
除非您实际开发Eclipse插件,否则您永远不会知道其中的区别。如果您正在开发Eclipse插件,则应安装32位版本的Eclipse作为参考平台,并且仍然使用不同的Eclipse副本开发程序。否则,您将面临基于开发环境引入依赖关系的风险(可能不会出现在其他人的vanilla运行时中)。
答案 1 :(得分:7)
是否就像用32位版本替换启动Eclipse的EXE一样简单?
没有。我对此表示怀疑。 Eclipse依赖于SWT,它本质上是本机代码。 64位版本将使用相当多的DLL等(在插件或功能目录中),这与32位版本完全不同。
还是有其他文件需要更换吗?
更换不安全。重新安装更安全,是我能想到的唯一理智选择。我不认为你应该调试Equinox启动器和无数其他组件,而不是在你的项目上工作。
答案 2 :(得分:6)
主要区别,SWT。 Eclipse使用的核心UI库。如果在64位VM上运行,则需要64位版本。
SWT是Eclipse用于其UI的本机库。这使Eclipse成为Java和Native代码的混合。
答案 3 :(得分:3)
只要您备份了源代码,我想只需尝试交换exe文件就不会有什么坏处。老实说,我强烈建议您重新安装32位版本。没有简单的方法来确定整个应用程序的差异以及需要替换的文件。
答案 4 :(得分:2)
SWT 32位jar和SWT 64位jar是不同的。交换EXE不起作用。 Eclipse中可能有更多特定于平台的jar。您可以在download page上看到更明显的差异(例如,WPF支持)。
答案 5 :(得分:1)
我最近做了相反的事。 基于32位eclipse juno平台,我创建了一个64位初始化器。
要做到这一点:
在64位打包的eclipse \ plugins中找到特定的64位封装插件jar文件: org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20120913-144807(这是一个文件夹) org.eclipse.core.filesystem.win32.x86_64_1.1.300.v20120522-1137.jar org.eclipse.core.net.win32.x86_64_1.0.100.v20120522-1148.jar org.eclipse.swt.win32.win32.x86_64_3.100.1.v4236b.jar org.eclipse.equinox.security.win32.x86_64_1.0.100.v20120522-2049.jar
将文件放入您正在更改的日食的插件文件夹中
编辑文件:eclipse \ configuration \ org.eclipse.equinox.simpleconfigurator \ bundles.info并添加: org.eclipse.core.filesystem.win32.x86_64,1.1.300.v20120522-1137,插件/ org.eclipse.core.filesystem.win32.x86_64_1.1.300.v20120522-1137.jar,4,假 org.eclipse.core.net.win32.x86_64,1.0.100.v20120522-1148,插件/ org.eclipse.core.net.win32.x86_64_1.0.100.v20120522-1148.jar,4,假 org.eclipse.equinox.security.win32.x86_64,1.0.100.v20120522-2049,插件/ org.eclipse.equinox.security.win32.x86_64_1.0.100.v20120522-2049.jar,4,假 org.eclipse.swt.win32.win32.x86_64,3.100.1.v4236b,插件/ org.eclipse.swt.win32.win32.x86_64_3.100.1.v4236b.jar,4,假 (参见模式?!:plugin-name,version,plugin-name_version.jar,4,false)
将eclipse.exe从64位软件包中复制为eclipse64.exe(或任何你想要的);
如果你正在做相反的事情,从64位到32位,你必须找到32位的插件(没有 64 命名),并按照相同的步骤,它应该工作。注意更多特定于平台的插件。