112 votes

Comment améliorer les performances de Netbeans?

Y a-t-il un moyen réel de faire charger et fonctionner Netbeans plus rapidement ?

C'est trop lent et ça empire lorsque vous codez depuis un certain temps. Ça mange toute ma RAM.


Je suis sur une machine Windows, plus précisément Windows Server 2008 Datacenter Edition x64, 4 Go de RAM, processeur 3 GHz Core 2 Duo, etc. J'utilise le JDK x64. J'utilise l'antivirus NOD32 car c'est le meilleur en termes de performances machine pour moi.

Dans le Gestionnaire des tâches netbeans.exe ne montre pas plus de 20 Mo, java.exe plus de 600 Mo.

Mon projet est une application web J2EE, plus de 500 classes, uniquement les bibliothèques du projet non incluses (externes). Et quand je dis lent, je veux dire que Netbeans se fige pendant 3, 4, 5 minutes ou plus.

Mon projet est-il simplement trop grand pour Netbeans, s'il doit lire tous les fichiers pour obtenir l'état des fichiers comme les avertissements d'erreurs, l'état svn et plus encore? Puis-je désactiver tout cela ? Est-il possible de le configurer pour analyser seulement lorsque j'ouvre un fichier ?

Mon utilisation du CPU est normalement à 30 pour cent avec tous mes outils ouverts, je veux dire Netbeans, MS SQL Manager, Notepad, XMLSpy, Gestionnaire des tâches, Delphi, VirtualBox. Netbeans mange plus de RAM que mes systèmes virtualisés.

Sur Linux, c'est aussi lent que sur Windows sur la même machine (Ubuntu 8.04 x64).

Il est vrai que l'équipe de Netbeans a amélioré la vitesse de démarrage mais lorsqu'il s'ouvre, il commence à tout mettre en cache.

J'ai utilisé quelques paramètres JVM pour définir une utilisation élevée de la mémoire et d'autres : "C:\Program Files\NetBeans Dev\bin\netbeans.exe" -J-Xms32m -J-Xmx512m -J-Xverify:none -J-XX:+CMSClassUnloadingEnabled

Mais c'est toujours lent.

0 votes

Quelques questions qui nous aideront à mieux comprendre votre problème :-) Pouvez-vous nous dire combien de RAM vous avez? Quel système d'exploitation utilisez-vous? Que montre le gestionnaire des tâches pour Netbeans? Combien de classes contiennent votre(s) projet(s)? Quand vous dites lent, pouvez-vous nous donner cela en termes de minutes, secondes?

0 votes

Votre machine semble assez puissante. Elle est beaucoup plus rapide que la mienne et je peux exécuter Netbeans à une vitesse correcte. La seule chose qui me vient à l'esprit est que vous utilisez un système d'exploitation 64 bits. Utilisez-vous le JDK Java 64 bits ?

0 votes

(-1) Quelle version de Netbeans utilisez-vous, combien de RAM avez-vous, quel est votre système d'exploitation, combien de plugins Netbeans avez-vous installés.

59voto

Ravish Tiwari Points 424

Solution très simple au problème lorsque votre NetBeans ou votre Eclipse IDE semble utiliser trop de mémoire :

  1. Désactiver les plugins que vous n'utilisez pas.
  2. Fermer les projets sur lesquels vous ne travaillez pas.

J'ai rencontré un problème similaire avec Netbeans 7.0 sur mon Linux Mint ainsi que sur ma boîte Ubuntu. Netbeans utilisait > 700 Mo d'espace et 50 à 80 % du CPU. J'ai alors décidé de faire un peu de nettoyage. J'avais 30 plugins installés et je n'en utilisais pas la plupart. J'ai donc désactivé les plugins que je n'utilisais pas, une quantité énorme de 19 plugins désactivés. Maintenant l'utilisation de la mémoire est passée en dessous de 400 Mo et l'utilisation du CPU est passée à 10 % et au maximum à 50 %.

Maintenant ma vie est beaucoup plus facile.

4 votes

+1 for closing projects you are not working in. Netbeans keeps an index on every project opened.

0 votes

@LuisLoboBorobia Est-ce que cela diffère de désactiver ou de désinstaller des plugins inutilisés?

0 votes

Eh bien, cela affecterait certainement, si le plugin effectue des opérations intensives en ressources basées sur les changements de fichiers, par exemple. Comme la surveillance effectuée par la gestion de version de code source. Je n'aurais pas de plugins inutilisés activés.

52voto

atamanroman Points 4566

Ne perdez pas de temps à optimiser votre installation NB tant que vous pouvez redimensionner verticalement : obtenez un SSD (et un matériel plus rapide en général).

Aussi :

  • Ajoutez une exception pour tous les dossiers pertinents (par exemple, le répertoire du projet, le répertoire temporaire) à votre logiciel antivirus (ou mieux, en débarrassez-vous).
  • Ne utilisez pas de lecteurs réseau pour vos projets
    • Vérifiez si votre lecteur principal est local
    • Vérifiez si votre IDE utilise des dossiers non locaux (par exemple, %AppData%)

29 votes

Je dois partiellement désaccord. J'ai 8 Go de RAM, 256 Go de SSD, un processeur core i5 dans mon ordinateur portable de travail et avec un gros projet avec hadoop L'IDE est tellement lent que je pense à passer à IDEA. J'ai essayé de doubler Xms, PermSize, de changer le garbage collector et d'ajouter quelques paramètres et maintenant Netbeans fonctionne bien! J'ajoute : Dsun.java2d.d3d=false -J-XX:+UseConcMarkSweepGC -J-XX:+CMSClassUnloadingEnabled -J-XX:+CMSPermGenSweepingEnabled. Tout dépend. SSD est bon, grande RAM aussi, mais ce n'est pas tout pour les performances de l'IDE. Je pense que les paramètres par défaut sont mauvais pour les gros projets avec de nombreuses bibliothèques à analyser.

0 votes

Cela dépend complètement de la taille de votre projet. Sur des projets de taille moyenne, un matériel rapide (avec une focalisation sur l'E/S) et une configuration AV rapportent plus que de jouer avec les paramètres de la VM. Cependant, cela pourrait être différent pour les projets ÉNORMES.

0 votes

Génial, un grand merci! J'ai divisé par 2 le temps nécessaire à la compilation, juste en excluant mes dossiers de projet dans mon antivirus.

24voto

Joshua Points 8315
  • Téléchargez la dernière version de Netbeans
  • Supprimez tous les plugins dont vous n'avez pas besoin.
  • Utilisez la dernière version de Java

0 votes

- la dernière version de NetBeans est actuellement la 6.9.1 - la dernière version de JDK est la 1.6.0 build 21

1 votes

Tu ne devrais jamais défragmenter si tu as un SSD et même avec des HDD réguliers, cela apporte peu voire aucun gain de performance.

0 votes

Comment ça? Bien que la défragmentation soit maintenant effectuée automatiquement par les systèmes d'exploitation modernes tels que Windows 7 et supérieurs.

21voto

shihabudheen Points 66

Nous pouvons utiliser l'option JVM suivante pour rendre NetBeans plus rapide au chargement / à l'exécution.

Option JVM: -J-Xverify:none

  • cette option indique à la JVM de ne pas vérifier le bytecode lors du chargement de classe et d'éviter le préchargement de classes inutiles.

Comment le définir:

Modifier le fichier C:\Program Files\NetBeans \etc\netbeans.conf (vérifiez le dossier d'installation de NetBeans si vous l'avez installé ailleurs)

  • Trouvez la ligne qui dit

    netbeans_default_options="..."

  • Ajoutez l'option -J-Xverify:none à la liste des options.

  • Redémarrez NetBeans.

11 votes

J'ai effectué une recherche Google pour Xverify:none et 3 des 4 premiers résultats disent tous qu'il ne devrait jamais être défini. Je ne sais rien sur JVM et ne sais pas si c'est vrai, mais je laisse ce commentaire ici comme avertissement aux personnes de ne pas copier-coller cela sans rechercher ce que cela fait réellement.

15voto

hamdam Points 51

Désactiver Git, Subversion, l'historique local, le correcteur orthographique et d'autres plugins inutilisés

1 votes

La plupart de ces éléments n'affectent pas vraiment les performances de manière significative, et je ne peux pas me passer de Git. En fait, je suis tenté de ne jamais fermer NetBeans entre les journées de travail pour éviter d'avoir à attendre le processus de chargement à chaque fois.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X