我在我的台式机和笔记本电脑之间的可移动驱动器上安装了Eclipse。我有一个旧的安装(火星),我很久以前通过解压缩文件安装。我有一个使用新的Eclipse安装程序安装的更新的安装(Neon)。
将我的计算机升级到Windows 10 Anniversary Edition后,当驱动器连接到台式机时,两个Eclipse安装都会继续工作。但是,当我将驱动器连接到笔记本电脑时,新的Eclipse安装(Neon ---使用安装程序安装的安装)将无法启动并说:
The Eclipse executable launcher was unable to locate its companion shared library.
然而旧的安装(火星 - 从解压缩档案中安装的那个)仍然可以正常运行。
笔记本电脑上的霓虹灯安装有什么问题,如何解决?
更新:我查看了eclipse.ini
文件,--launcher.library
引用了C:/Users/user/.p2/pool/plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.400.v20160518-1444
。笔记本电脑(失败)只有org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417
。但桌面(工作地点)同时包含org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.300.v20150602-1417
和org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.400.v20160518-1444
。
因此,当驱动器连接到桌面时,Eclipse可能会以某种方式更新其Equinox Launcher。然后,当我将驱动器连接到笔记本电脑时,它引用了更新的启动器插件,但笔记本电脑没有更新的启动器。
这是一个很好的鱼。我不知道Eclipse在Eclipse安装目录之外的用户目录中安装了东西。我想这是这个新奇发射器的缺点之一:它不可能在共享驱动器上使用Eclipse。
如何让Eclipse在共享驱动器而不是系统用户主目录中安装启动器?如果我直接从zip文件安装,我可以完全避免这种情况吗? Eclipse是如何在不了解它的情况下首先更新此启动器的?
更新:现在我看到Eclipse还在本地 org.eclipse.equinox.launcher_1.3.200.v20160318-1642.jar
目录中安装了plugins
(即相对于可执行文件)驱动器)。为什么Eclipse在可移动驱动器上放置了相对于可执行文件(就像它们应该)的一些东西,以及系统用户目录中的其他东西(我不想要它们)?这是一团糟。像我一样拥有一个独立的Eclipse安装十多年。
答案 0 :(得分:0)
默认情况下,Eclipse安装程序确实使用共享"捆绑池"因此,如果您运行多个不同的Eclipse实例,那么他们使用的各种插件只下载一次。这通常可以节省网络带宽和磁盘空间。 但是,如果安装和捆绑池位于不同的驱动器上,则此捆绑池可能无法正常工作(特别是如果其中一个由多台计算机共享)。您可以将此限制报告给http://bugs.eclipse.org。
作为一种解决方法,对于这样的自定义安装,我建议您跳过Eclipse安装程序,并获得可以像Mars一样工作的旧包,所有内容都在他们自己的目录中:https://www.eclipse.org/downloads/eclipse-packages/