Eclipse 在 Unity 启动器上有两个图标,而我只想要一个

Eclipse 在 Unity 启动器上有两个图标,而我只想要一个

我最近升级到了 Eclipse Luna,从那时起我就无法从 Unity Launcher 启动它。我修改了.desktop位于 中的旧文件~/.local/share/applications,然后将其添加到启动器中,现在它看起来像这样:

有效的 XHTML


我怎样才能解决这个问题?

作为参考,这是我的eclipse.desktop文件:

#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Path=/home/jinkim/eclipse
Icon=/home/jinkim/eclipse/icon.xpm
Exec=/home/jinkim/eclipse/eclipse
Name=Eclipse Luna
Comment=This is an IDE
Icon=eclipse

答案1

似乎文件中有一行.desktop我遗漏了。特别是,关键的一行似乎是:

StartupWMClass=Eclipse

更多详细信息请参见此处:.desktop 文件的 StartupWMClass 字段代表什么?

因此,我发现下面这种方法对我有用:

#!/usr/bin/env xdg-open
[Desktop Entry]
Name=Eclipse
GenericName=Eclipse Java IDE
Comment=Eclipse Java IDE
Categories=Utility;Developer Tools;IDEs;Java;
Exec=/home/(your-username-here)/eclipse/eclipse
Icon=/home/(your-username-here)/eclipse/icon.xpm
StartupWMClass=Eclipse
StartupNotify=true
Terminal=false
Type=Application
X-GNOME-FullName=Eclipse Java IDE

我为实现这个功能采取的步骤如下:

  1. 使用文本编辑器创建eclipse.desktop并将上述内容粘贴到其中

  2. 搬进eclipse.desktop~/.local/share/applications

  3. 允许其可执行:chmod +x eclipse.desktop

  4. 双击,eclipse.desktopNautilus 中将显示为Eclipse

  5. 在 Unity 启动器中,右键单击并选择“锁定到启动器”

答案2

我也遇到过同样的图标重复问题。但就我而言,这是因为我双击了 eclipse 可执行文件并要求 unit 将其锁定在启动器中。此操作使 unity 在 ~/.local/share/applications 中创建一个 eclipse.desktop 文件,其中其“exec=”设置为 java 而不是 eclipse 可执行文件。在我删除 unity 创建的那个并添加我自己的那个之后,问题就解决了。

答案3

根据您安装 Eclipse 的方式和选择的发行版,您可能会发现StartupWMClass需要不同的值(使用xprop WM_CLASS上面 Jin 的回答中的链接中描述的方法)。

从 Platform Runtime 发行版构建自定义 Eclipse 后,我得到了一个额外的“无条目”图标,其标题为“SWT”。使用xprop WM_CLASS告诉我该类名为“SWT”,设置StartupWMClass=SWT解决了该问题。

相关内容