加载应用程序并显示启动器图标时,不会使用.desktop文件中指定的图标

我在ubuntu 12.04 64bit上安装了较新的应用程序eclipse Juno,遵循本教程: http : //www.blogs.digitalworlds.net/softwarenotes/ ?p = 54。 我以前已经安装了Eclipse Indigo(已经在Ubuntu repos中找到的版本)。 请注意,我可能在这里使用Eclipse作为示例,但在其他情况下我也遇到过这种行为。

因此,最初的Eclipse Indigo .desktop文件如下:

[Desktop Entry] Type=Application Name=Eclipse Comment=Eclipse Integrated Development Environment Icon=eclipse Exec=eclipse Terminal=false Categories=Development;IDE;Java; 

为了与旧的Eclipse Juno并排安装,我稍微改了一下。 上面的文件成了:

 [Desktop Entry] Type=Application Name="Eclipse Indigo" #<------THIS CHANGED Comment=Eclipse Integrated Development Environment Icon=eclipse Exec=eclipse Terminal=false Categories=Development;IDE;Java; 

最后,我为eclipse juno生成了.desktop文件,不是按指南指示的方式,而是使用命令

 gnome-desktop-item-edit --create-new ~/applications 

该文件的内容是:

 #!/usr/bin/env xdg-open [Desktop Entry] Version=1.0 Type=Application Terminal=false Icon[en_US]=/opt/eclipse/icon.xpm Name[en_US]=Eclipse Juno Exec=/opt/eclipse/eclipse Comment[en_US]=Eclipse Juno 4.2.2 IDE Name=Eclipse Juno Comment=Eclipse Juno 4.2.2 IDE Icon=/opt/eclipse/icon.xpm 

现在启动应用程序使用较新的Juno图标并将鼠标hover在图标上(确实足够)“Eclipse Juno”。

到现在为止还挺好。 但是,如果我使用/opt/eclipse/eclipse从CLI启动应用程序,我会在启动器上显示Eclipse Indigo的图标,并在此图标上显示“Eclipse Indigo”。 然而,Juno已经开始了(这是我想要的)。

在下图中,顶部图标(红色矩形)是Eclipse Juno。 在底部的图标是Eclipse Juno,但是从命令行开始。 谢谢您的帮助。

IMG

编辑:好的, ~/applications正在取得比它应有的更多名声。 这只是一个保存应用程序,二进制文件和其他个人内容的个人文件夹。 我在个人文件夹中创建了文件,然后将生成的.desktop文件复制到/usr/share/applications

为什么要在~/applications目录中创建桌面文件? 此桌面文件应放在/usr/share/applications~/.local/share/applications

正确而成功的方法是使用主菜单 (可以使用sudo apt-get install alacarte命令sudo apt-get install alacarte )。 在Dash中搜索它,或者您可以使用以下命令从终端打开它:

 alacarte 

打开后,请按照下图中的说明操作:

[222]

如果你有一个Eclipse Juno的新桌面文件,你可以在~/.local/share/applications之后检查。 新fesktop文件的名称应该类似于alacarte-made-x.desktop (其中x是数字)。 现在如果你想在~/applications目录中找到这个文件的副本,你可以在那里复制它而不会有任何问题。

另一个重要的事情是:在两个桌面文件中使用应用程序的完整路径( Exec=/path/to/eclipse )。

也可以看看: