wake-up-neo.com

Wie kann ich die Leistung von Netbeans verbessern?

Gibt es eine echte Möglichkeit, Netbeans schneller laden und arbeiten zu lassen?

Es ist zu langsam und wird schlimmer, wenn Sie seit einiger Zeit programmieren. Es frisst meinen ganzen RAM.


Ich bin auf einem Windows-Computer, insbesondere Windows Server 2008 Datacenter Edition x64, 4 GB RAM, 3Ghz Core 2 Duo-Prozessor usw. Ich verwende das x64-JDK. Ich verwende das NOD32 Antivirus, da es für mich die beste Computerleistung darstellt.

Im Task-Manager zeigt netbeans.exe nur maximal 20 MB, Java.exe mehr als 600 MB.

Mein Projekt ist eine J2EE-Webanwendung, mehr als 500 Klassen, nur die Projektbibliotheken, die nicht enthalten sind (Externe). Und wenn ich langsam sagte, meine ich, 3, 4, 5 Minuten oder mehr Netbeans ist gefroren.

Ist mein Projekt für Netbeans einfach zu groß, wenn es alle Dateien lesen muss, um den Status von Dateien wie Fehlerwarnungen, svn-Status und mehr zu ermitteln? Kann ich das alles deaktivieren? Kann ich festlegen, dass nur beim Öffnen einer Datei gescannt wird?

Meine CPU-Auslastung liegt normalerweise bei 30 Prozent. Alle meine Werkzeuge sind geöffnet. Ich meine damit Netbeans, MS SQL Manager, Notepad, XMLSpy, Task-Manager, Delphi, VirtualBox. Netbeans frisst mehr RAM als meine virtualisierten Systeme.

Unter Linux ist es auf demselben Rechner genauso langsam wie unter Windows (Ubuntu 8.04 x64).

Es stimmt, dass das Netbeans-Team die Startgeschwindigkeit verbessert hat, aber wenn es geöffnet wird, beginnt es, ALLES zu zwischenspeichern. 

Ich habe einige JVM-Parameter verwendet, um eine hohe Speichernutzung festzulegen, und andere: "C:\Program Files\NetBeans Dev\bin\netbeans.exe" -J-Xms32m -J-Xmx512m -J-Xverify:none -J-XX:+CMSClassUnloadingEnabled

Es ist aber immer noch langsam.

105
yeradis

Sehr einfache Lösung für das Problem, wenn Ihr NetBeans oder Eclipse IDE zu viel Arbeitsspeicher zu verwenden scheint:

  1. Deaktivieren Sie die Plugins, die Sie nicht verwenden.
  2. Schließen Sie die Projekte, an denen Sie nicht arbeiten.

Ich hatte ein ähnliches Problem mit Netbeans 7.0 auf meiner Linux Mint sowie Ubuntu Box. Netbeans verwendete mehr als 700 MiB Speicherplatz und 50-80% CPU .__ Dann entschied ich mich, ein paar Aufräumarbeiten durchzuführen. Also habe ich die Plugins deaktiviert, die ich nicht benutzte. Ich habe 19 beeindruckende Plug-Ins deaktiviert. Der Speicher verbraucht jetzt bis zu 400 MiB und der Prozessor weniger als 10 und maximal 50%.

Jetzt ist mein Leben viel einfacher.

52
Ravish

Investieren Sie nicht in die Optimierung Ihrer NB - Installation, solange Sie vertikal skalieren können: Besorgen Sie sich eine SSD (und generell eine schnellere Hardware).

Ebenfalls:

  • Fügen Sie Ihrer Antiviren-Software eine Ausnahme für alle relevanten Ordner hinzu (z. B. Projektverzeichnis, temporäres Verzeichnis) (oder besser, entfernen Sie sie). 
  • Verwenden Sie keine Netzlaufwerke für Ihre Projekte
    • prüfen Sie, ob Ihr Heimlaufwerk lokal ist
    • prüfen Sie, ob Ihre IDE nicht lokale Ordner verwendet (z. B. %AppData%).
48
atamanroman
  • Laden Sie die neuesten Netbeans herunter
  • Entfernen Sie alle Plugins, die Sie nicht benötigen.
  • Verwenden Sie die neueste Version von Java
24
Joshua

Wir können die folgende JVM-Option verwenden, um das Laden/Ausführen von NetBeans etwas zu beschleunigen.

JVM-Option: -J-Xverify:none

  • diese Option weist JVM an, den Bytecode während des Ladens der Klasse nicht zu überprüfen, und verhindert das Vorabladen nicht benötigter Klassen.

Wie einstellen:

Bearbeiten Sie die Datei C:\Program Files\NetBeans <version>\etc\netbeans.conf (Überprüfen Sie den Installationsordner von NetBeans, wenn Sie ihn an einem anderen Ort installiert haben.)

  • Finden Sie die Zeile, die besagt 

    netbeans_default_options = "..."

  • Fügen Sie der Liste der Optionen die Option -J-Xverify:none hinzu.

  • Starten Sie NetBeans neu.

20
shihabudheen

deaktivieren Sie Git, Subversion, Local History, Rechtschreibprüfung und andere nicht verwendete Plugins 

15
hamdam

Handelt es sich um eine Windows-Unternehmensmaschine? Wenn so aggressive Virenscanner moderne IDEs wirklich verlangsamen können. Überprüfen Sie Ihren Task-Manager auf Prozesse, die viele CPU- oder Festplattenlesevorgänge verwenden.

4
devstopfix

Jeder sollte beachten, dass Sun Java Virtual Machine für Windows keinen gemeinsam genutzten Speicher verwendet. Das bedeutet, je mehr Heap Sie Ihrer VM geben, desto mehr Speicher bleibt für Sie erhalten. Der Vorteil von mehr Heap ist die geringere Speicherbereinigung und möglicherweise eine schnellere Leistung der Java-Anwendung, die Sie ausführen. Der Nachteil ist jedoch, dass für Ihre anderen Anwendungen möglicherweise weniger Arbeitsspeicher zur Verfügung steht und sich das System dadurch langsamer fühlt.

4
James Tikalsky

Ich verwende Windows 7. Ich schlage vor, mit der rechten Maustaste auf die NetBeans-Verknüpfung zu klicken, zu Eigenschaften zu wechseln und auf der Registerkarte Verknüpfung unter Ziel -J-Xmx1024m -J-Xms256m hinzuzufügen.

Hiermit wird die Speichernutzung der JVM festgelegt. Xms ist der Minimalwert, während Xmx der Maximalwert ist.

Dies ist der Wert des Zieltextfelds:

"C:\Program Files\NetBeans 7.1\bin\netbeans.exe" --jdkhome "C:\Program Files\Java\jdk1.6.0_10" -J-Dorg.netbeans.modules.php.dbgp.level=400 -J-Xmx1024m -J-Xms256m

Seit ich dieses Attribut hinzufüge, laufen meine NetBeans so schnell!

Eine andere Möglichkeit, hier mehr Referenz zu versuchen

Bearbeiten Sie im Verzeichnis etc unter Netbeans-Home die Datei netbeans.conf. -Xms und -Xmx sollten auf die Werte erhöht werden , mit denen Ihr Programm kompiliert werden kann.

anweisungen in netbeans.conf :

# Note that default -Xmx and -XX:MaxPermSize are selected for you automatically.
# You can find these values in var/log/messages.log file in your userdir.
# The automatically selected value can be overridden by specifying -J-Xmx or
# -J-XX:MaxPermSize= here or on the command line.

Fügen Sie die Werte in die Zeichenfolge netbeans_default_options ein. Beispiel:

netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.Java2d.noddraw=true -J-Dsun.Java2d.dpiaware=true -J-Dsun.Zip.disableMemoryMapping=true  -J-Dsun.awt.disableMixing=true -J-Dswing.aatext=true -J-Dawt.useSystemAAFontSettings=lcd --laf Nimbus"

Was zu tun ist, um Speicherfenster zu beschleunigen/freizugeben:

  1. Deaktivieren Sie Windows Update:

    • Öffnen Sie den Task-Manager, öffnen Sie die Registerkarte Dienste, und deaktivieren Sie Windows Update:

disable win update

  1. Schlagen Ctrl + R und geben Sie Services.msc ein und drücken Sie die Eingabetaste.
    • Sortieren nach Startup Type
    • Wählen Sie Dienste von Drittanbietern (nicht Windows) aus, auf denen Automatic ausgeführt wird. Klicken Sie mit der rechten Maustaste, klicken Sie auf Properties, und ändern Sie den Starttyp in Manual.

services

  • Sortieren nach Status und Beenden von Diensten von (Drittanbieter-) Apps, die Sie für nicht verwendet halten
3
toha

Defragmentieren Sie auch Ihre Festplatte. Netbeans ist sehr aggressiv beim Erstellen von Caches der einen oder anderen Form. Die meisten von ihnen bleiben irgendwann auf der Festplatte erhalten, was sich auf die Startzeit auswirken kann. Virenscanner (insbesondere Symantec), Desktop-Suchmaschinen und andere aufdringliche E/A-Produkte können die Leistung drastisch reduzieren.

Ich habe festgestellt, dass Netbeans zeitweise temperamentvoll sein können und die Leistung zwischen zwei Maschinen mit nahezu identischen Spezifikationen stark variieren kann. Meine Arbeitsmaschine hat eine schreckliche Leistung und ist manchmal unbrauchbar, aber sie ist blitzschnell, wenn ich sie auf meiner Heimmaschine verwende (in vielen Fällen mit größeren Projekten). 

3
James Schek

Hier sind meine Netbeans-Optionen für etc/netbeans.conf using G1 GC und einige weitere Verbesserungen.

netbeans_default_options = "- J-Server -J-Xss4m -J-Xms256m -J-Xmx512m -J-XX: PermSize = 256m -J-Dapple.laf.useScreenMenuBar = true -J-Dapple.awt.graphics.UseQuartz = true - J-Dsun.Java2d.noddraw = true -J-Dsun.Java2d.dpiaware = true -J-Dsun.Zip.disableMemoryMapping = true -J-Xverify: keine -J-XX: + UseG1GC -J-XX: + TieredCompilation - J-XX: + AggressiveOpts -J-Dswing.aatext = true -J-Dawt.useSystemAAFontSettings = lcd -J-Dorg.netbeans.editor.aa.extra.hints = true "

Die Schriftarteinstellungen (swing.aatex und folgende) sind optional - können Sie nach Bedarf festlegen oder entfernen.

Diese Einstellungen steigern meine Netbeans sehr!

3
ollo

Um die Start- und Aufbauzeiten von Netbeans zu verbessern, sollte man (in dieser Reihenfolge):

  1. Stellen Sie sicher, dass Sie über genügend freienRAMmemory verfügen (4 GB Windows reicht auf meinem 64-Bit-System aus).
  2. Kaufen Sie einSSD, es macht den Unterschied in der Startzeit und der Buildzeit (meine Projektaufbauzeit wird von 60 Sekunden auf 6 Sekunden verlängert!)
  3. Achten Sie auf den Virenscanner , sie können den wahlfreien Dateizugriff erheblich verlangsamen (stellen Sie sicher, dass Sie Ihre .Java- und .class-Dateien nicht scannen!)
  4. Kaufen Sie den schnellsten Prozessor , den Sie in die Finger bekommen können.
2
Kdeveloper

Eine mehr oder weniger detaillierte Beschreibung, warum NetBeans so langsam sind, kann in dem Artikel gefunden werden:

Steigern Sie Ihre NetBeans-Leistung

Zuerst. Prüfen Sie, was NetBeans tatsächlich auf Ihrer Festplatte tut. Auf einem Mac können Sie diesen Befehl ausgeben:

  Sudo fs_usage | grep /path/to/workspace

In meinem speziellen Fall habe ich ein Verzeichnis erhalten, das nicht mehr existiert, aber NetBeans versucht ständig, auf den Ordner zuzugreifen:

  14:08:05 getattrlist /path/to/workspaces/pii 0.000011 Java

Wiederholt viele, viele, viele Male. Wenn Sie ein ähnliches Problem haben, beheben Sie das Problem, indem Sie Ihren NetBeans-Cacheordner hier löschen:

   ~/.netbeans/6.8/var/cache

Wenn Ihre NetBeans.app immer noch eine Menge Festplatten-E/A erstellt. Überprüfen Sie, ob auf die Unterordner und den svncache zugegriffen wird.

Ich musste die Subversion-Funktionen mit der Konfigurationsdatei deaktivieren:

  ~/.netbeans/VERSION/config/Preferences/org/netbeans/modules/versioning.properties 

füge eine Zeile hinzu:

  unversionedFolders=FULL_PATH_TO_PROJECT_FOLDER  

SOURCE: Netbeans-Foren

IMHO ist dies hauptsächlich auf eine Menge von Festplatten-E/A zurückzuführen, die durch fehlende Dateien oder Ordner und svncache verursacht wird.

2
schmunk

Ich hatte das gleiche Problem mit Netbeans, das so langsam ist, aber nach Deaktivierung des SVN-Plug-Ins ist es jetzt viel besser. Ich denke, das kann helfen. 

Viel Glück

2
ismail

Das funktioniert für mich:

netbeans_default_options = "- J-Client -J-Xverify: keine -J-Xmx1024m -J-Xss2m -J-Xms256m -J-XX: PermSize = 32m -J-Dnetbeans.logger.console = true -J-ea -J- Dapple.laf.useScreenMenuBar = true -J-Dapple.awt.graphics.UseQuartz = true -J-Dsun.Java2d.noddraw = true -J-Dsun.Java2d.dpiaware = true -J-Dsun.Zip.disableMemoryMapping = true - J-Dplugin.manager.check.updates = false -J-Dnetbeans.extbrowser.manual_chrome_plugin_install = yes "

Einstellungen im etc/netbeans.conf.

2
J.G. te H.

Ich habe beschlossen, das letzte Mal zu untersuchen, warum meine NetBeans langsam laufen.

Ich verwende einen PC mit 16 GB RAM und 3,5 GHz 8 Core Prozessor. Meine CPU-Auslastung liegt bei 5-20%, der Speicher liegt unter 40%, aber NetBeans ist langsamer als mein 15 Jahre alter PC, den ich in der Garage aufbewahrt habe.

Nachdem ich dieses Thema gefunden und durchgegangen bin http://wiki.netbeans.org/FaqSlowNetBeans , habe ich festgestellt, dass in der unteren rechten Ecke der NetBeans nach dem Versuch immer eine Leiste mit der Meldung "Scanning ..." angezeigt wird Um es zu stoppen und nichts passiert habe ich weiter nachgesehen, was "Scanning ..." gemacht hat, und mir wurde klar:

Bei jedem Start der NetBeans werden die geöffneten Projekte automatisch von den NetBeans geprüft.

Und hier ist es, ich habe 20 Projekte geschlossen und NetBeans läuft so schnell wie Notepad.

2
user3402600

Wenn es sich auf einem Unternehmenscomputer befindet, stellen Sie sicher, dass die Caches nicht im Netzwerk gespeichert sind

2
Fortyrunner

Ein wirklich nützlicher Artikel über Gründe, warum Ihre NetBeans langsam sind:

http://wiki.netbeans.org/FaqSlowNetBeans

2
Jacek Lisiński

Ähnlich dem Vorschlag, alles auf eine SSD zu legen.

Ich betreibe Netbeans von FreeBSD. Die netbeans-Cache-Dateien befanden sich in .netbeans in meinem Home-Verzeichnis. Mein Home-Verzeichnis war über NFS gemountet, so dass der Zugriff sehr langsam war. Durch das Verschieben von .netbeans auf den lokalen Computer wurde die Leistung erheblich verbessert. Ich habe einen Softlink von .netbeans in meinem Home-Verzeichnis zum lokalen Verzeichnis hinzugefügt. Netbeans beschreibt, wie Usedir und Cachedir hier geändert werden, und listet dies unter Punkt 4 auf.

Zuvor konnte ich ganze Sätze in Kommentare schreiben, bevor die Gui sie einholte und sie zeigte. Nach dem Text erscheint während der Eingabe.

1
cs_alumnus

Legen Sie Ihren .netbeans-Homefolder in eine Ramdisk und Netbeans wird unglaublich schnell.

Ich habe auf meinem Ubuntu 16.04 festgestellt, dass jedes Tastendruck eine Lese- oder Schreibaktion auf der Festplatte verursacht. Grund genug für mich, eine Ramdisk zu verwenden. Als etwas positiver Nebeneffekt ist meine HDD jetzt recht zierlich (kein Tickclickrrickrrrticktick mehr) und hat ein längeres Live.

1
Steffomio

Einfachste Lösung:

Gehen Sie zu Einstellungen-> Editor und Deaktivieren: Auto Popup-Abschlussfenster

Verwenden Sie stattdessen: Metaschlüssel + \, wenn Sie Code vervollständigen möchten.

Das größte Problem, das ich gefunden habe, war die Auto Code-Completion-Funktion. Während der Eingabe versuchte ich immer, die Code-Fertigstellung auszuführen. Dies führte zu einer sehr langsamen Leistung, da mein Projekt viele Bibliotheken enthält hängt ab von.

Das Beste von allem ist, dass Sie aufhören können, gegen den Editor zu kämpfen, da er im Fertigstellungs-Popup immer falsch positive Ergebnisse erhält.

Habe nicht zurückgeschaut, seit ich das ausgeschaltet habe.

1
Dieter Gribnitz

NetBeans 8.0.2 (PHP) hat zwei Probleme: den Subversion-Client und die Twig-Vorlagen . Um die Gesamtleistung drastisch zu verbessern, a) deaktivieren Sie das Plug-In "Twig Templates" (dadurch werden auch Symphony2 deaktiviert.) (falls Sie es benötigen) und b) überschreiben Sie den SVN-Client mit diesem Schalter:

run.args.extra=-J-DsvnClientAdapterFactory=commandline

^ project.properties lässt die CLI-Argumente individuell definieren (Dies kann auch bei RAM -Einstellungen und anderen Anpassungen sinnvoll sein). Vermutlich könnte man Twig wieder aktivieren, sobald der verknüpfte Fehlerbericht geschlossen wurde. Das erneute Scannen ist nicht wirklich das Problem, während das erneute Scannen so ausgeführt wird, wie es sollte ... zeitnah.

Gerade testete man etwas mehr und bemerkte, dass es unter Linux mit dem Oracle JDK viel ruhiger abläuft als dem (üblichen) OpenJDK - es hat sogar eine Version von NetBeans gebündelt.

1
Martin Zeitler

Ich hatte große Probleme mit NetBeans 8.0.2. Es ist eine alte Frage, aber vielleicht landet jemand anderes wie ich mit dem gleichen Problem und ich habe keine Antwort gefunden, die mir irgendwo geholfen hat. 

Ich habe NetBeans 8.0.2 mit Ruby on Rails-Plugin unter Windows 7. Die IDE hing bei fast jeder Änderung, die ich in einigen Dateien vorgenommen habe, bis zu 10 Sekunden. Es war nur ein Problem mit großen Dateien, aber es muss von mehr abhängen, es gab andere große Dateien ohne das Problem. 

Das Problem wurde durch den "Hinweis" "Rails 3 Deprecations" verursacht, ich habe es ausgeschaltet und jetzt ist es sehr schnell, ich kann alles sonst ohne Probleme einschalten.
Es ist unter Tools -> Options -> Editor -> Hints

In den anderen Antworten zur Optimierung mit Startparametern gibt es auch einige Vorschläge. Ich habe diese Links zu JVM-Switches gefunden, die mir beim Testen geholfen haben, zu optimieren (aber es stellte sich heraus, dass diese Einstellungen nichts mit meinem Problem zu tun haben). Sie sind sehr alt, haben aber nützliche Informationen:
Erklärung der JVM-Switches .
Einige (alte) Empfehlungen

0
244an

Öffne die Datei: 

/Applications/NetBeans/NetBeans\ 8.0.2.app/Contents/Resources/NetBeans/etc/netbeans.conf

Ich habe einige Optionen hinzugefügt:

netbeans_default_options="-J-Dsun.Java2d.opengl=true -J-Dsun.Java2d.d3d=false -J-Xmx2048m ...

Die Verwendung von opengl kann Ihnen je nach System möglicherweise helfen. Ich lasse OsX laufen. 2048m sind vielleicht zu viel, scheinen aber nicht zu schaden :-) ...

0
ChrisVollo

Versuchen Sie, Netbeans mit VisualVM zu profilieren. Wenn der "Hotspot" org.gnome.accessibility.atkwrapper.emitsignal () ist, versuchen Sie, Netbeans mit auszuführen 

-J-Djavax.accessibility.assistive_technologies=" "

Es hat mir sehr geholfen.

Ich weiß nicht genau, warum genau dieses Toolkit verwendet wird, aber es scheint, dass es normalerweise sicher ist, es zu deaktivieren.

0
sleeply4cat

Für mich hat es sich herausgestellt, das automatische Scannen von Quellen zu ermöglichen.

0
gab06

Hatte das gleiche Problem mit Netbeans 7.3. * Und 7.4 Beta unter Windows 7. Beim Ein- und Ausschalten einiger Plugins stellte ich fest, dass es das svn-Plugin war , das die CPU ständig auf etwa 27% anstachelte und meinen Laptop in ein Toaster. Schalten Sie es aus und codieren Sie wieder glücklich :)

0
Mirko

Für Windows - Sollte auch für andere Betriebssysteme funktionieren

Netbeans ist wie jede andere Java-Anwendung, deren JVM angepasst werden muss.

Bitte lesen Sie den folgenden Link, um einige Benchmark-Ergebnisse für Netbeans zu erhalten

https://performance.netbeans.org/reports/gc/

Die folgenden Einstellungen funktionieren gut in meinem Windows 7-PC mit 4 GB RAM und I5 Quad Core-Prozessor.

(Überprüfen Sie die Zeile netbeans_default_options in der netbeans-Konfigurationsdatei im Ordner bin und ersetzen Sie die Konfigurationszeile wie folgt.)

netbeans_default_options = "- XX: TargetSurvivorRatio = 1 -Xverify: keine -XX: PermSize = 100M -Xmx500m -Xms500m -XX + UseParallelGC $ {netbeans_default_options}"

Kleiner Vorschlag: Die Speicherbereinigung spielt eine wichtige Rolle bei der Größe der JVM-Heap. Da ich einen Quad-Core-Prozessor hatte, habe ich Parallel GC verwendet. Wenn Sie einen Single-Thread-Prozessor haben, verwenden Sie bitte UseSerialGC. Wenn die Xmx-Xms-Werte gleich sind, hat die JVM nach meiner Erfahrung keinen Performance-Overhead, um zwischen den Werten min und max umzuschalten. In meinem Fall ist der Parallel-GC immer dann nützlich, wenn meine App-Größe 500 MB überschreitet, um unerwünschten Müll zu entfernen, so dass meine App in meinem PC niemals 500 MB übersteigt. 

0
Natty