32位和64位Eclipse之间的区别

时间:2011-06-13 14:31:51

标签: java eclipse 64-bit 32-bit

我有一个关于32位和64位版本Eclipse之间差异的快速问题。我需要知道实际下载之间的差异,而不是性能差异或类似的差异。

我的情况是这样的:我使用64位Eclipse为Eclipse项目(Java)建立了一个开发环境,在Subversion中对文件进行了版本化,并在我们必须在32位操作系统上开发之后找到了因为该项目其他部分的限制。而不是必须下载和设置一个完整的不同Eclipse实例,它是否就像用32位版本替换启动Eclipse的EXE一样简单?或者是否有其他文件需要替换?

6 个答案:

答案 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位初始化器。

要做到这一点:

  1. 在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

  2. 将文件放入您正在更改的日食的插件文件夹中

  3. 编辑文件: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)

  4. 将eclipse.exe从64位软件包中复制为eclipse64.exe(或任何你想要的);

  5. 将eclipse.ini复制为eclipse64.ini(必须与exe匹配)
  6. 将ini文件中的启动器部分替换为原始文件: --launcher.library 插件/ org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20120913-144807
  7. 在ini文件中设置相应的vm(64位): -vm C:/ Program Files / Java / jre7 / bin / javaw.exe
  8. 瞧!你有一个可以作为32或64位的日食!
  9. 如果你正在做相反的事情,从64位到32位,你必须找到32位的插件(没有 64 命名),并按照相同的步骤,它应该工作。注意更多特定于平台的插件。