如何让Eclipse在Windows 10任务栏和程序搜索中表现良好?

42

这个问题与其著名的Windows 7对应问题非常相似,但是同样的解决方案在Windows 10上不再适用,因此看来这个新平台值得有自己的问题。

当然,每个在Windows上使用Eclipse的人都曾经遇到过这个古老的错误 - 在这里有记录 - 但是对于那些不熟悉的人,简而言之就是你会在任务栏中得到两个Eclipse图标,因为Eclipse启动器(eclipse.exe)和Eclipse工作区(JVM)是两个独立的进程,你无法将工作区进程固定到任务栏。看起来他们近期不会修复这个问题,所以我们现在依赖于解决方法。

是否有人让Eclipse在Windows 10任务栏中正常工作?开始菜单搜索(即Cortana)呢?这篇文章介绍了如何将Eclipse固定到开始菜单,但不幸的是Windows搜索无法识别这个快捷方式。


2
这里的修复实际上应该由 Eclipse 团队处理:Eclipse 的两个部分都应该使用相同的 AppUserModelId,这样,Windows 就会将它们视为逻辑上相同的对象。话虽如此,似乎在迁移到 Win10 时一些应用程序的解决方法被删除了,因为我注意到像 iTunes 这样的应用程序开始出现这种情况(而且我记得 iTunes 发布了更新来解决这个问题)。 - Andrew Pilley
谢谢提供信息 - 我会在Bugzilla上将其传达给Eclipse社区。 - icyitscold
6个回答

51

这是icyitscold答案的更新版本,不需要卸载/重新安装eclipse。

1)取消固定任何eclipse图标

2)运行“eclipse.exe -clean”以清除缓存,然后关闭eclipse

3)修改 ./plugins/org.eclipse.epp.package.xxxxx/plugin.xml
文件夹因使用的eclipse版本而异:j2ee、java、c++等。
更改appName属性-将其称为“MyEclipse”或其他名称。

4)编辑eclipse.ini添加以下内容:

-vm
C:/Program Files/Java/jdk1.8.0/jre/bin/server/jvm.dll

在这行代码之前,需要将路径修改为你的JDK所在位置:

--launcher.appendVmargs

5)运行Eclipse并打开工作区,加载完成后将Eclipse图标固定到任务栏。


感谢icyitscold、Ruslan Gainutdinov和Timo Kinnunen的贡献。


1
这个完美地运行了。实际上,对我来说第2步和第4步并不是必要的。 - Climax
3
在Windows 8.1上,我只需要完成第1步和第2步。使用“-clean”选项启动Eclipse后,运行Eclipse窗口会出现“固定到任务栏”的选项。 - cakan
1
谢谢,Cakan。您的解决方案(仅使用步骤1和2)也可以在Windows 10上运行。 - dionoid
1
对我来说,仅在 Windows 2016 机器上使用位置 1 和 5 即可。 - datafiddler
2
对我来说,我不得不用 -vm .../bin/server/jvm.dll 替换默认的 -vm .../bin/javaw.exe,这样我就可以将 Eclipse 固定到任务栏上了。谢谢! - Igor
显示剩余5条评论

26

Eclipse Neon + Oxygen + Photon + 2019‑06的解决方法

这是一个非常简单的两步骤过程,无需编辑。

  1. 关闭所有Eclipse实例并取消固定损坏的图标

  2. 打开Eclipse。但不要固定到任务栏上。选择一个工作区,让主Eclipse窗口加载。将其固定(右键单击图标->固定到任务栏)。

这对我完美地起作用了。


2
太好了,修复很容易和简单。谢谢。 - Miloud Eloumri
1
很高兴看到他们决定修复奇怪的行为:D谢谢分享! - rococo
1
适用于2019-06版本。 - SwissFr
在2021-12版本上完美运行。感谢您提供的简单修复,无需安装/卸载或更改任何内容。 - Alex K.

21
答案一直在我眼前 - 至少对于任务栏来说是这样。全部归功于Timo Kinnunen,在bugzilla报告中已经发布了此解决方法。
1.编辑所选Eclipse版本(“product”)的plugin.xml文件并删除以下行: 应该在第一次安装前执行此操作,因为属性值会被缓存,并且更改不会在清除缓存之前生效。正确的文件位置因版本而异: - \plugins\org.eclipse.sdk_4.4.0.v20140123-1600 - \plugins\org.eclipse.epp.package.standard_2.1.0.20131103-0830 - \plugins\org.eclipse.epp.package.jee_4.5.0.20150621-1200
2.编辑eclipse.ini,在--launcher.appendVmargs之前添加以下行: -vm "C:/Program Files/Java/jdk1.8.0/jre/bin/server/jvm.dll"
这将导致JVM在与eclipse.exe相同的进程中启动,而不是作为子进程启动,并避免了Host Processes with AppUserModelIDs的复杂性。
3.通过双击eclipse.exe来启动Eclipse。只有当工作区打开后,才从任务栏图标选择“将此程序固定到任务栏”。

2
在第一次安装之前,应该完成这个步骤。那些已经运行过 Mars 的人,除了彻底卸载并重新安装之外,还有什么其他方法吗? - Martin
1
为了澄清答案和上面的评论中使用的术语,“安装”意味着将zip内容提取到您想要的目录中,“卸载”意味着完全从硬盘中删除该目录。在我删除了eclipse目录并重新解压到相同位置后,按照说明进行操作之前,我无法使指令起作用。 - codenaugh
2
简单地关闭Eclipse并取消固定任务栏快捷方式,然后按照您的第三步操作,这对我很有效。谢谢。 - brandall
3
我也成功地使用 eclipse.ini 文件中的 -vm 参数使其工作 - 关键点是 jvm.dll 路径必须在单独的一行上! - robert
1
我找不到 plugin.xml 文件。但是添加 vm arg 对我有用。 - ABC123
显示剩余4条评论

2

针对Windows 10操作系统,前往已解压的Eclipse文件夹,右键点击eclipse.exe

  • 若需将Eclipse固定到任务栏,请选择固定到任务栏
  • 若需将Eclipse固定到开始菜单,请选择固定到开始菜单

这个方法可以运行,但它仍然会作为独立的任务栏图标启动IDE。 - Nyerguds

0

这比我预想的要容易得多...以下是我在Win 10中所做的。

  1. 进入解压后的Eclipse文件夹,右键单击Eclipse图标并使用“发送到桌面”创建快捷方式。
  2. 一旦快捷方式出现在我的桌面上,右键单击该图标并选择“固定到任务栏”。

Done!....simple..no?


1
除非在eclipse.ini文件中指定了-vm,否则此方法无法正常工作。该方法已在Eclipse Neon.1的全新安装上进行了测试。 - Andy Braham

0

这篇文章中描述的步骤对我来说非常有效,可以消除任务栏中重复的项目(Windows 10 + Eclipse Oxygen):

https://superuser.com/a/932807


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接