NetBeans呆滞/无响应


9

在具有16Gb RAM和M4 SSD的Intel Core i3处理器上的64位Ubuntu 12.04上,NetBeans非常缓慢,还有一个已知的问题,即NetBeans不使用Ubuntu 12.04的全局菜单。除了这个问题,为什么NetBeans这么慢,甚至比Eclipse慢!

请观看以下视频:http: //youtu.be/utLQD5Gpg0M


我认为您的菜单示例不是缓慢的准确指标。据我所知,它正在等待鼠标悬停。如果您真的想测试它是否“缓慢”,请打开菜单之一,然后点按向左或向右箭头键以查看实际滞后时间。
RobotHumans 2012年

我从未见过NetBeans运行得比这快得多。我认为这就是它的方式(我无法想象它会在后台实现如此糟糕的性能……)
marcus 2012年

Answers:


17

外观:

在外观上,GTK +Java Swing应用程序不能同时很好地发挥作用。恐怕我们必须等待Java 8进行适当的修复。

目前,如果您不是使用Kubuntu,而是使用Ubuntu和Unity,则必须切换到本机外观。 Metal.

转到您的netbeans目录(例如:)/home/user/netbeans7.2/etc并打开文件:netbeans.conf

然后将以下行添加到netbeans选项:

-J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd --laf Metal

使用Metal LAF在Ubuntu 12.04中使用Netbeans

来源http : //hanynowsky.wordpress.com/2012/04/27/netbeans-ide-look-feel-under-ubuntu-12-04/

全局菜单: Java Swing应用程序暂时无法从全局菜单集成中受益。出于同样的原因:GTK / Swing实现。即使是Eclipse IDE,即使它是SWT而不是基于Swing的,现在也被列入黑名单。Emacs和Lotus笔记也是如此。不过,您可以使用Java Ayatana库激活对Java Swing应用程序的“全局菜单”支持,并为Netbeans安装相应的插件:http : //hanynowsky.wordpress.com/2012/05/12/integration-of-java-swing-applications -with-unity-global-menu-in-ubuntu-12-04 / 顺便说一句,如果OpenJDK人群在OpenJDK的下一版本中包含相同的库,那将是理想的,这样Swing应用程序就可以立即支持Global Menu。

缓慢: 我在计算机上经常使用Netbeans IDE,与Eclipse相比,它一点也不慢。Ubuntu软件中心(repos)打包的版本可能存在问题。我不推荐。而是从Netbeans.org 下载Netbeans 7.1.2并将其本地安装在主目录中。您会注意到它比存储库中的版本要快。当您使用OpenJDK而不是Oracle JDK(已测试)时,也可能会出现速度慢的情况。


谢谢,这可以解决视觉问题,但是速度仍然很慢。由于某些原因,Aptana和Eclipse完全可以立即加载到我的计算机上,可以立即使用。但是我要说的是Netbeans花了5秒钟,然后在加载后又慢了3秒钟,之后就可以了。
oshirowanen'5

别客气!但是,您使用的是什么版本的Netbeans?什么JDK?对我来说,Netbeans在启动之前需要花费一些时间来加载所有模块,然后再扫描所有项目。总计:Netbeans 15秒,Eclipse 14秒。
Hanynowsky

我当前正在运行NetBeans 7.0.1,但是我也尝试过NetBeans 7.1.2,这似乎在速度方面没有什么不同。我正在运行Java 1.6.0_24:Java版本“ 1.6.0_24” OpenJDK运行时环境(IcedTea6 1.11.1)(6b24-1.11.1-4ubuntu2)OpenJDK 64位服务器VM(内部版本20.0-b12,混合模式)。此外,从头开始加载到可用总共需要大约11秒的时间。作为比较,Libre Calc在我的新SSD上花费的时间不到一秒钟……
oshirowanen 2012年

如果您第二次运行LibreOffice,是的,所需时间不到一秒钟。我有一个带有4 Go RAM的i7 2.10hz,netbeans需要15s的准备时间,这很正常(netbeans是一个充满模块的巨大IDE)。
Hanynowsky

1
还知道NetBeans非常消耗内存!检查OpenJDK是否具有可从netbeans.conf调用的引导参数。我会检查,如果我发现什么。我会向你报告!
Hanynowsky

1

这似乎是默认的Adwaita主题(可能还有其他主题)的问题。GTK2应用程序的gtkrc会给GTK LAF带来问题,并阻止呈现分隔符和菜单边框。显然,在某些情况下,它也可能导致UI缓慢(即使我没有经历过)

通过调整gtkrc文件,我能够解决问题。

================================================== =============================

在gtkrc中替换以下3个样式部分:

style "menu" {
    xthickness = 1
    ythickness = 1

    bg[NORMAL]        = shade (1.08, @bg_color)

    engine "clearlooks" {
        radius = 0.4
    }
}

style "menu_item" {
    xthickness = 2
    ythickness = 3

    fg[PRELIGHT]      = @selected_fg_color
}

# This style is there to modify the separator menu items. The goals are:
# 1. Get a specific height.
# 2. The line should go to the edges (ie. no border at the left/right)
style "separator_menu_item" {
    xthickness = 1
    ythickness = 1

    GtkSeparatorMenuItem::horizontal-padding = 0
    GtkWidget::wide-separators = 1
    GtkWidget::separator-width = 1
    GtkWidget::separator-height = 7
}

1

我刚刚升级到Kubuntu 12.04,所以NetBeans IDE没问题。我的理由是Kubuntu是基于KDE的发行版,而NetBeans IDE默认情况下是使用Metal L&F。

我认为,可以通过强制使用Metal L&F来改善GTK下的NetBeans体验。命令行选项是--laf Metal(或类似名称)。


1

在Kubuntu 12.04上,我不得不重新安装两次才能netbeans加载并运行。我经历了性能的严重下降。当我键入内容时,注册需要几秒钟的时间。

这就是为什么我在家切换到Mac的原因。


除了不使用ubuntu的全局应用程序外,我在使用常规ubuntu时也没有问题。我想说的不是OSO质量下降,而是更像是“我们期望OSO的商业质量”
T0xicCode 2012年

那么解决方案在这里呢?Netbeans在10.04上表现出色。
oshirowanen 2012年

xav0989,如果不是因为NetBeans响应速度很快的Ubuntu早期发行版中的OSO质量问题,我会同意您的意见。
oshirowanen 2012年

1
@Jesse最近的一项研究证实,开源软件代码质量已超过专有软件的竞争对手!
Hanynowsky

@Hanynowsky是的,但是我更喜欢在开发时同时考虑硬件和软件的系统。即苹果产品。
杰西(Jesse)

0

尝试在其中使用这些开关 netbeans.conf

-J-XX:ReservedCodeCacheSize=1024m -J-XX:+UseCodeCacheFlushing

您可以为ReservedCodeCacheSize分配较少的内存(默认值为64m),但是在我的系统上有很多RAM时,此开关使Netbeans突然变得更快。


0

Netbeans停止响应键盘和鼠标输入时遇到问题。每天不得不使用xkill几次,在此过程中失去了工作。我已升级到Netbeans 7.1(不在存储库中,而是一个非常简单的升级),此后没有遇到此问题。我希望这可以帮助那些沮丧的人。


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.