Eclipse菜单被关闭或不显示


84

我正在使用Ubuntu 13.10(带有JDK 1.7.0_45)。

我已经为Java EE开发人员下载并解压缩了Eclipse Kepler。

软件菜单混乱了。我没有在其他软件中注意到类似的问题。

当我单击Eclipse中的任何菜单时,下拉菜单似乎被“剪切”。有时会显示下拉列表,但选项不可见。

我尝试了Eclipse Indigo,但是发生了同样的问题。


我也有同样的问题,但是使用Eclipse CDT,也注意到了,如果我使用sudo运行eclipse,则菜单也很好。
kroiz 2013年

Answers:


85

如何在Ubuntu 13.10中解决Eclipse菜单问题

(稳定的方法,直到有人修复了该错误)

该方法理所当然的是您已经有了eclipse.desktop文件(或者您可以从头开始创建一个新文件)。否则,您可以暂时查看下面的“快速方法”。

  1. 打开您的eclipse.desktop文件:

    sudo -H gedit /usr/share/applications/eclipse.desktop
    

    (如果在此路径中找不到它,请尝试~/.local/share/applications/eclipse.desktop。否则,可能必须使用locatecommand 查找它)。

  2. 将此Exec=行替换为:

    Exec=env UBUNTU_MENUPROXY= eclipse
    

    其中“ eclipse”是您的eclipse可执行文件的路径。在这种情况下,由于/usr/bin文件夹中有一个符号链接,因此只是“ eclipse” 。

    注意:如果找不到eclipse.desktop文件,则可以简单地在上述路径中从头开始创建一个文件,并用以下几行填充:

    [Desktop Entry] 
    Type=Application 
    Name=Eclipse 
    Icon=eclipse 
    Exec=env UBUNTU_MENUPROXY= eclipse 
    Terminal=false 
    Categories=Development;IDE;Java;
    
  3. 保存文件。

现在,您可以照常从其图标运行Eclipse。

(快速但重复的方式)

如果您没有任何eclipse.desktop文件,并且现在不想创建它,则可以使用以下命令简单地运行Eclipse:

UBUNTU_MENUPROXY= eclipse

其中“ eclipse”是eclipse可执行文件的路径。请注意,这只是一次运行Eclipse的快速方法。如果您不想记住该命令并在每次运行Eclipse时都使用它,请遵循上面的“稳定方式”。

或者您也可以使用别名

alias eclipse = 'UBUNTU_MENUPROXY= eclipse'

并且命令eclipse将正常工作。


资料来源:


2
对我来说,这是一个可行的解决方案,但它又一次崩溃了,这不再解决了
Codey McCodeface 2013年

@ user1128171它仍然对我有用。
Kurt Bourbaki 2013年

1
@LuísdeSousa-running gedit将始终创建该文件;-)
Wilf

1
wilf写道,@LuísdeSousa只需运行即可sudo gedit /usr/share/applications/eclipse.desktop创建eclipse.desktop文件。
Kurt Bourbaki 2014年

2
Kurt,什么才是正确的内容
路易·德·索萨

10

我有同样的问题,我最懒的解决方法是

  1. 打开一个Gnome终端 (CTRL + ALT + T默认快捷键)
  2. 问题UBUNTU_MENUPROXY=0 eclipse

为我工作。


1
这是唯一对我有效的解决方案。Exec=env UBUNTU_MENUPROXY= eclipse在Ubuntu 13.10上添加到我的eclipse.desktop文件并不能解决我的问题:-(
Chris

不在

@thefourtheye可能的解决方法实际上仅适用于版本13.10
Abel Melquiades

这是唯一对我有用的解决方案。如何使这个永久化?
vigamage

6

就我而言,/ usr / share / applications中有两个版本的文件:

eclipse.desktop
Eclipse.desktop

如上所述,要么删除其中之一,要么更改两者中的Exec行。该文件的第三个版本位于主文件夹中:

~/.local/share/applications/Eclipse.desktop

您可以删除最后一个,也可以更改其中的执行行。

您所要做的就是更改Exec行,如下所示:

Exec=env UBUNTU_MENUPROXY= /path/to/eclipse/eclipse

感谢您将我指向〜/ .local / share / applications / Eclipse.desktop
blackbird07

谢谢。我编辑了答案并添加了~/.local路径。
Kurt Bourbaki 2014年

就是这样!我想知道为什么桌面文件中的mt更改没有生效,这完全是因为桌面文件的.local版本...
Deep-B

2

您需要编辑一个名为eclipse.desktop的文件,以包含MENUPROXY选项。

  • 根据您的安装,此位置将有所不同。要找到它,请键入sudo find / -name eclipse.desktop
  • 找到位置后,在您喜欢的编辑器中打开文件。对我来说,这是vim,所以我键入sudo vim /usr/share/applications/eclipse.desktop(请注意,您的位置可能有所不同,请参阅第一步。
  • 在文件中时,查找类似于this->的行Exec=/opt/eclipse/eclipse。(请注意,您可能只是在其中没有完整路径的“蚀”)。
  • 找到那条线后,将其注释掉。然后添加以下行:(Exec=env UBUNTU_MENUPROXY= /opt/eclipse/eclipse根据需要进行编辑。如果您的安装没有完整路径,或者安装路径不同,请在此处进行调整)。注意MENUPROXY =之后的空格。这个很重要。`启动Eclipse并再次享受顶部的菜单。

我没有这样的文件,终端没有返回任何结果。
Jeroen Bollen 2013年

2
@JeroenBollen您可以创建该文件,并用我在我上面的文章中写的内容(在Ubuntu 13.10中如何解决Eclipse菜单问题)填充该文件。
Kurt Bourbaki

1

您可以尝试以下操作:http : //ubuntuforums.org/showthread.php?t=2181641&p=12819998#post12819998 Eclipse的菜单未显示在Unity全局菜单中。和我一起工作。


我也为我工作,但需要从命令行执行,也需要CDT,我的eclipse无法识别c ++,并声称没有可用的编辑器,但已通过删除.metadata并重新启动来解决。
kroiz 2013年

1
虽然从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。
kiri

-1

就我而言,该文件不存在,

我必须在 ~/.local/share/applications

只需创建eclipse.desktop包含

Version=4.3.0
Name=Eclipse
Exec=env UBUNTU_MENUPROXY= path=/home/abali/apps/eclipse/eclipse Icon=/home/abali/apps/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=IDE;

别忘了做

source eclipse.desktop

,然后打开eclipse即可。


2
什么?source eclipse.desktop不要这样做,这完全没有必要,并且可能会产生不良影响。
kiri 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.