NetBeans jest powolny / nie odpowiada

9

Na moim 64-bitowym Ubuntu 12.04 na procesorze Intel Core i3, który ma 16 GB pamięci RAM i dysk SSD M4, NetBeans jest bardzo powolny, a także znany problem, w którym NetBeans nie korzysta z globalnego menu Ubuntu 12.04. Pomijając ten problem, dlaczego NetBeans jest tak wolny, że jest nawet wolniejszy niż Eclipse!

Obejrzyj ten film: http://youtu.be/utLQD5Gpg0M

oshirowanen
źródło
Nie sądzę, aby twój przykład menu był dokładnym miernikiem powolności. Czeka na najechanie myszką od tego, co mogę powiedzieć. Jeśli naprawdę chcesz przetestować go pod kątem „powolności”, otwórz jedno z menu i dotknij klawiszy strzałek w lewo lub w prawo, aby zobaczyć, jak duże jest opóźnienie.
RobotHumans
Nigdy nie widziałem, aby NetBeans działał znacznie szybciej. Myślę, że tak właśnie jest (nie mogę sobie wyobrazić, co robi w tle, aby osiągnąć ten okropny występ ...)
Marek

Odpowiedzi:

17

Spójrz i poczuj:

Aplikacje GTK + i Java Swing nie działają wcale dobrze razem, jeśli chodzi o wygląd. Obawiam się, że będziemy musieli poczekać na poprawkę Java 8.

Na razie, jeśli nie używasz Kubuntu, ale Ubuntu i Unity, musisz przełączyć się na natywny wygląd, który jest Metal.

Przejdź do katalogu netbeans (np .:) /home/user/netbeans7.2/etci otwórz plik:netbeans.conf

następnie dodaj następujący wiersz do opcji netbeans:

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

Netbeans w Ubuntu 12.04 przy użyciu Metal LAF

Źródło : http://hanynowsky.wordpress.com/2012/04/27/netbeans-ide-look-feel-under-ubuntu-12-04/

Globalne menu: aplikacje Java Swing nie mogą na razie korzystać z integracji globalnych menu. Z tego samego powodu: implementacje GTK / Swing. Nawet Eclipse IDE jest teraz na czarnej liście, mimo że jest oparty na SWT i nie jest oparty na Swing. To samo dotyczy notatek Emacs i Lotus. Niemniej jednak możesz aktywować obsługę globalnego menu dla aplikacji Java Swing za pomocą Java Ayatana Library, a dla netbeans zainstalować odpowiednią wtyczkę: http://hanynowsky.wordpress.com/2012/05/12/integration-of-java-swing-applications -with-unity-global-menu-in-ubuntu-12-04 / Nawiasem mówiąc, byłoby idealnie, gdyby tłum OpenJDK zawierał tę samą bibliotekę w następnej wersji OpenJDK, aby Swing Application uzyskała wsparcie dla Globalnego menu od razu po wyjęciu z pudełka.

Powolność: Często używam Netbeans IDE na moim komputerze i wcale nie jest to wolne w porównaniu z Eclipse. Może to być problem z wersją zawartą w Centrum oprogramowania Ubuntu (repozytorium). Nie polecam tego Zamiast tego pobierz Netbeans 7.1.2 z Netbeans.org i zainstaluj go lokalnie w swoim katalogu domowym. Zauważysz, że jest szybszy niż wersja w repozytoriach. Powolność może również wystąpić, gdy używasz OpenJDK zamiast Oracle JDK (testowane).

Hanynowski
źródło
Dzięki, rozwiązuje to problemy wizualne, ale powolność wciąż istnieje. Z jakiegoś powodu Aptana i Eclipse ładują się do mojego komputera w pełni gotowe do użycia w ciągu sekundy bez opóźnień. Ale powiedziałbym, że Netbeans zajmuje dobre 5 sekund, a potem jest opóźniony przez kolejne 3 sekundy po załadowaniu, po czym jest OK.
oshirowanen
nie ma za co! Ale jakiej wersji Netbeans używasz? Jaki JDK? Dla mnie Netbeans potrzebuje trochę czasu, aby załadować wszystkie moduły przed uruchomieniem, a następnie skanuje wszystkie projekty. Łącznie: 15 sekund dla Netbeans i 14 s dla Eclipse.
Hanynowsky
Obecnie korzystam z NetBeans 7.0.1, ale wypróbowałem także NetBeans 7.1.2, co nie wydaje się mieć znaczenia pod względem szybkości. Używam java 1.6.0_24: java wersja „1.6.0_24” Środowisko wykonawcze OpenJDK (IcedTea6 1.11.1) (6b24-1.11.1-4ubuntu2) OpenJDK 64-bitowa maszyna wirtualna serwera (kompilacja 20.0-b12, tryb mieszany). Ponadto ładowanie od zera do momentu rozpoczęcia użytkowania zajmuje około 11 sekund. Dla porównania, na moim nowym dysku SSD Libre Calc zajmuje mniej niż sekundę ...
oshirowanen
Jeśli uruchomisz LibreOffice po raz drugi, tak, zajmuje to mniej niż sekundę. Mam i7 2.10hz z 4 Go RAM i netbeans zajmuje 15 s, aby być gotowym, co jest dość normalne (netbeans to ogromne IDE pełne modułów).
Hanynowsky
1
Wiedz także, że NetBeans jest bardzo głodny pamięci! Sprawdź, czy OpenJDK ma parametry ładowania początkowego, które można wywołać z netbeans.conf. Sprawdziłbym i jeśli coś znajdę. Zgłosiłbym się do ciebie!
Hanynowsky
1

Wydaje się, że jest to problem związany z domyślnym motywem Adwaita (i prawdopodobnie także innymi). GTkrc dla aplikacji GTK2 powoduje problemy w GTK LAF i uniemożliwia renderowanie separatorów i ramek menu. Oczywiście w niektórych przypadkach może to również powodować powolność interfejsu użytkownika (chociaż tego nie doświadczyłem)

Poprzez ulepszenie pliku gtkrc udało mi się rozwiązać problem.

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

Zamień następujące 3 sekcje stylu w gtkrc:

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
}
Jaroslav Bachorik
źródło
1

Właśnie uaktualniłem do Kubuntu 12.04 i nie ma problemu z NetBeans IDE. Powodem może być to, że Kubuntu opiera się na dystrybucji KDE, a NetBeans IDE domyślnie korzysta z Metal L&F.

Moim zdaniem możesz poprawić swoje doświadczenie NetBeans w GTK, zmuszając go do korzystania z Metal L&F. Opcje wiersza poleceń to --laf Metal (lub coś w tym rodzaju).

Jaroslav Tulach
źródło
1

Na Kubuntu 12.04 i musiałem ponownie zainstalować dwa razy, netbeansaby załadować i uruchomić. Doświadczyłem znacznego pogorszenia wydajności. Kiedy piszę, rejestracja zajmuje kilka sekund.

Właśnie dlatego w domu przełączyłem się na Mac.

Jesse
źródło
Nie mam problemu z używaniem go ze zwykłym ubuntu, poza tym, że nie korzysta z globalnego menu ubuntu. Powiedziałbym, że nie chodzi o to, że jakość OSO poszła na marne, ale bardziej na „oczekujemy komercyjnej jakości OSO”
T0xicCode
Więc jakie byłoby rozwiązanie? Netbeans był zgryźliwy 10.04.
oshirowanen
xav0989, Gdyby nie jakość OSO w poprzednich wersjach Ubuntu, w których NetBeans działał bardzo responsywnie, zgodziłbym się z twoim komentarzem.
oshirowanen
1
@Jesse niedawne badanie potwierdziło, że jakość kodu oprogramowania open source przekroczyła rywala w oprogramowaniu zastrzeżonym!
Hanynowsky
@Hanynowsky To prawda, ale wolę system, w którym zarówno sprzęt, jak i oprogramowanie są brane pod uwagę przy opracowywaniu. tj. produkty Apple.
Jesse
0

Spróbuj użyć tych przełączników netbeans.conf

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

Możesz dać mniej pamięci dla ReservedCodeCacheSize (domyślnie jest to 64m), ale w moim systemie z dużą ilością pamięci RAM ten przełącznik spowodował, że Netbeans nagle znacznie szybciej.

E-abi.ee
źródło
0

Miałem problem z tym, że Netbeans przestał reagować na klawiaturę i mysz. Musiałem używać xkill kilka razy dziennie, tracąc przy tym pracę. Uaktualniłem do Netbeans 7.1 (nie w repozytoriach, ale bardzo prosta aktualizacja) i od tego czasu nie spotkałem się z tym problemem. Mam nadzieję, że to pomoże komuś z podobnymi frustracjami.

użytkownik138262
źródło
0

Umieść swój .netbeansHomefolder w ramdysku, jak wspomniałem tutaj .

Steffomio
źródło