Comment pouvez-vous accélérer l'expérience avec Eclipse?
Par exemple: je désactive tous les plugins dont je n'ai pas besoin (Mylyn, Subclipse,…).
Au lieu d'utiliser un plugin pour Mercurial , je configure TortoiseHG comme un outil externe.
Comment pouvez-vous accélérer l'expérience avec Eclipse?
Par exemple: je désactive tous les plugins dont je n'ai pas besoin (Mylyn, Subclipse,…).
Au lieu d'utiliser un plugin pour Mercurial , je configure TortoiseHG comme un outil externe.
Réponses:
Les trois facteurs les plus influents pour la vitesse Eclipse sont:
Le "même" espace de travail dans Indigo (3.7.2) SR2 se charge en 4 secondes, dans Kepler SR2 (4.3.2) en 7 secondes et dans Luna (4.4.0) en 10 secondes. Tous sont des bundles Java EE. Les nouvelles versions ont plus de plugins groupés, mais la tendance est toujours évidente. (par "même" espace de travail, je veux dire: mêmes plugins (installés en plus) utilisés, mêmes projets extraits du contrôle de version).
Le lancer avec le dernier JDK (Java 14 au moment de l'écriture, ce qui ne vous empêche pas de compiler dans votre projet Eclipse avec tout autre JDK que vous souhaitez: 1.4.2, 1.5, 1.6 plus ancien ...)
-vm jdk1.6.0_10\jre\bin\client\jvm.dll
Configuration de eclipse.ini (voir cette question pour un eclipse.ini complet )
-Xms512m
-Xmx4096m
[...]
L' Xmx
argument est la quantité de mémoire qu'Eclipse obtiendra (en termes simples). Avec -Xmx4096m
, il obtient 4 Go de RAM, etc.
Remarque:
La référence à jvm.dll présente des avantages:
libjava.so
: Sous Linux, cela libjava.so
dépend libjvm.so
, mais l'inverse n'est pas vrai $ readelf -d libjava.so
Dynamic segment at offset 0x208a8 contains 25 entries:
Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libjvm.so] [...]
:: Lorsque la bibliothèque contient de telles informations, ld.so
se charge libjvm.so
automatiquement lors du chargement d'un processus libjava.so
.
Ajoutez -Xverify:none
à votre fichier eclipse.ini .
Cela réduira considérablement votre temps de démarrage Eclipse (50% dans mon cas sinon plus). Cela indiquera à la machine virtuelle de ne pas valider tous les fichiers .class qu'elle charge.
Considérez ceci: ne désactivez jamais la vérification du bytecode dans un système de production (comme mentionné dans les commentaires)
Allez dans Windows -> Préférences -> Validation et décochez celles que validators
vous ne voulez pas ou dont vous n'avez pas besoin.
Pour Eclipse 3.7, vous utilisez Windows -> Préférences -> Général -> Démarrage et arrêt .
Assurez-vous que vous utilisez la JVM Sun pour exécuter Eclipse.
Sous Linux, en particulier Ubuntu, Eclipse est installé par défaut pour utiliser le GCJ open source, qui a des performances considérablement moins bonnes. Permet update-alternatives --config java
de basculer vers la JVM Sun pour améliorer considérablement l'accrochage de l'interface utilisateur dans Eclipse.
java -version
devrait dire quelque chose comme openjdk version "1.8.0_131"
). Je trouve que OpenJDK 9 entraîne de moins bonnes performances (latence plus élevée) pour de nombreuses tâches.
Fermez tous les projets ouverts qui ne sont pas en cours d'utilisation.
Essayez de désactiver le mode de publication automatique pendant le développement.
Merci pour les indices. Ces options (mentionnées ci-dessus) m'ont beaucoup aidé:
Les fenêtres:
Augmenter la mémoire et concernant ma version Java mise à jour dans eclipse.ini:
-Dosgi.requiredJavaVersion=1.6
-Xms512m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
-Xverify:none
De plus, comme nous optimisons la vitesse, le réglage -Xms
sur la même valeur que -Xmx
la JVM démarre avec la quantité maximale de mémoire qu'elle est autorisée à utiliser.
Linux / Ubuntu:
En utilisant
update-alternatives --config java
-XmX
) dépend de la mémoire de votre système. Lorsque j'ai posé la question, 512 m était la valeur optimisée pour mon ancien netbook WinXP. Lire la suite ici: stackoverflow.com/questions/4304312/…
Une autre amélioration des performances peut être obtenue en désactivant les décorations d'étiquette ( Windows -> Preferences; General -> Appearance -> Label Decorations
) et en désactivant les capacités inutilisées au démarrage ( Windows -> Preferences; General -> Startup and Shutdown
).
Vous pouvez également obtenir des performances supplémentaires en choisissant une stratégie de récupération de place différente en fonction de votre machine virtuelle Java.
Si vous en avez assez des cycles de redémarrage, vous pouvez utiliser JavaRebel de ZeroTurnaround. Cela raccourcira votre temps passé à redémarrer le serveur / client.
Bien qu'il ne soit pas directement lié à Eclipse:
Si vous exécutez Windows 7 (et probablement Windows Vista), assurez-vous de désactiver l'indexation des fichiers de votre dossier d'espace de travail si votre fichier se trouve à l'emplacement par défaut - votre dossier de départ. Par défaut, Windows indexe tout dans votre dossier de départ, et ce n'est normalement qu'un gaspillage pour votre espace de travail. (Cliquez avec le bouton droit sur le dossier de l'espace de travail dans l'explorateur, Propriétés -> Avancé .)
Eclipse charge les plug-ins paresseusement et les plug-ins les plus courants, comme Subclipse , ne font rien si vous ne les utilisez pas. Ils ne ralentissent pas du tout Eclipse pendant l'exécution, et cela ne vous aidera pas à les désactiver. En fait, il a été démontré que Mylyn réduit l'empreinte mémoire d'Eclipse lorsqu'il est utilisé correctement.
J'exécute Eclipse avec des tonnes de plug-ins sans aucune perte de performances.
Ce n'est pas seulement la mémoire que vous devez augmenter avec le commutateur -Xmx, c'est aussi la taille perm gen . Je pense que ce problème a été résolu dans Eclipse 3.4.
Il y a une autre chose qui accélère vraiment Eclipse sur Windows et surtout Linux - mettre la JVM dans le disque RAM.
Pour Windows, vous pouvez utiliser le pilote de disque RAM commercial de Qsoft .
Pour Linux, utilisez l'une des méthodes décrites dans de nombreux articles sur Internet. Il est important de donner au disque RAM un espace supplémentaire 10% plus grand que la taille de la JVM.
Vérifiez-le. Cela fait vraiment une différence.
grep -r
ou peut-être utiliser vmtouch
pour charger les pages dans le cache fs?
Je lui donne une tonne de mémoire (ajoutez un -Xmx
commutateur à la commande qui la démarre) et j'essaie d'éviter de la quitter et de la redémarrer - je trouve que les pires retards sont au démarrage, donc lui donner beaucoup de RAM me permet de continuer plus longtemps avant qu'elle ne plante en dehors.
Outre les derniers logiciels (les derniers Eclipse et Java) et plus de RAM, vous devrez peut-être
J'ai également réglé les vmargs et tout ça. Mais ce qui a vraiment accéléré Eclipse sous Windows, c'est la configuration "correcte" du logiciel antivirus. Vous devez désactiver l'analyse à la demande des fichiers compressés. les fichiers jar et de nombreux fichiers liés à java sont emballés avec l'algorithme PKZIP pour économiser de l'espace. Comme Eclipse utilise des tonnes de fichiers java, un antivirus tente de décompresser et d'analyser chacun d'eux individuellement. Donc, pour la plate-forme Windows: désactivez l'analyse à la demande des fichiers compressés, sinon Eclipse sera anormalement lent. Veuillez garder à l'esprit que la désactivation de ce paramètre rend malheureusement votre système plus faible contre les attaques, la plupart des logiciels malveillants utilisent des packers.
J'ai implémenté un plug-in pour configurer les fonctionnalités à charger lors de l'exécution pour améliorer les performances et réduire les conflits entre les différents plug-ins.
Vous avez peut-être installé de nombreuses fonctionnalités dans votre Eclipse, telles que des outils de développement Android, des outils de développement C / C ++, des plug-ins PHP , SVN , Git et ClearCase . Par conséquent, Eclipse est lourd et coûte beaucoup de mémoire, et certains d'entre eux ne sont pas souvent utilisés.
Vous pouvez donc utiliser mon outil pour créer différentes politiques d'exécution, comme celle qui a Android, Git et Eclipse de base, une autre contient C / C ++, SVN et Eclipse de base. La prochaine fois, Eclipse ne chargera les fonctionnalités spécifiées que si vous utilisez la stratégie qui ne dispose que d'Android et de Git.
Vous êtes invités à l'essayer et à me faire part de vos commentaires. :)
Le nom de cet outil est Equinox Advanced Configurator .
Ne pas être sous-estimé, c'est avoir une machine rapide. 16-32 Go de RAM, SSD et un processeur décent ... et who0o0om là vous allez.
Les meilleures pratiques dans ce fil sont implémentées dans l' Optimizer gratuit pour Eclipse , de ZeroTurnaround .
En quoi cela aide-t-il?
Pour plus de détails, consultez cet article de RebelLabs .
Faites un effort pour configurer votre chemin de génération. La complétion de code utilise beaucoup de mémoire si elle doit passer par l'ensemble de votre dossier de projet.
J'ai connu une amélioration considérable des performances lors de la limitation du nombre d'onglets ouverts (dans le passé, j'avais plus de 30 onglets ouverts). Vous pouvez laisser Eclipse gérer cela automatiquement pour vous:
Fenêtre -> Préférences -> Éditeurs -> fermer automatiquement les éditeurs
8 onglets ouverts est le montant avant que le signe >> n'apparaisse, donc j'ai tendance à le laisser à 8.
Lorsque vous ouvrez d'autres onglets, ceux auxquels vous avez accédé le moins récemment seront fermés.
-> Lorsque tous les éditeurs sont sales ou coincés
S'il contient des modifications non enregistrées, vous pouvez demander d'enregistrer et de réutiliser (l'onglet sera fermé, un nouveau sera ouvert à sa place). Ou vous pouvez ouvrir un nouvel éditeur et augmenter ainsi le nombre d'onglets ouverts (le choix discret).
Si vous souhaitez vous assurer que certains onglets ne se ferment jamais automatiquement, vous pouvez les épingler. Ceci en cliquant sur l'icône d'épingle (l'icône la plus à droite dans la barre d'outils, avec "éditeur d'épingle" comme info-bulle).
J'ai désactivé toutes les options inutilisées dans Windows> Préférences> Général et cela a un énorme impact positif sur les performances, l'éclipse est toujours lente lors du changement d'onglets, je ne veux pas augmenter la mémoire, mais c'est beaucoup plus rapide lors du défilement. Merci pour les conseils.
Essayez aussi, cela améliorera les performances:
nettoyage des index - {chemin de l'espace de travail} .metadata.plugins \ org.eclipse.jdt.core historique de nettoyage - {chemin de l'espace de travail} .metadata.plugins \ org.eclipse.core.resources.history
Le nettoyage des dossiers ci-dessus n'aura pas d'impact sur les fichiers du projet.
**Tips for making Eclipse IDE Faster**
Eclipse s'exécute plus rapidement lorsque vous travaillez avec de petits projets. Mais lorsque vous devez travailler avec un grand projet, vous serez irrité par sa vitesse. Même avec une énorme RAM, vous ne serez pas satisfait de sa vitesse.Les étapes ci-dessous aideront l'éclipse à augmenter sa vitesse
Supprimez l'activation indésirable de certains plugins au démarrage en allant dans Windows–> préférence–> Général–> Démarrage et arrêt assurez-vous également de ne pas utiliser ces plugins dans aucune de vos vues
Désactiver les décorations d'étiquettes qui vous sont moins utiles vous aidera également à obtenir des performances. Allez dans Windows–> Préférence–> Général–> Apparence–> Étiquette -> Décorations
Fermez les projets indésirables et utilisez l'option d'ensemble de travail pour passer d'un groupe de projets à un autre en douceur.
Configurez eclipse.ini qui sera disponible dans l'emplacement d'installation eclipse.
Configuring eclipse.ini should be based on your RAM
-Xms256m
-Xmx512m
-XX:PermSize=512m
-XX:MaxPermSize=512M
Jetez également un œil à http://wiki.eclipse.org/Eclipse.ini pour plus d'options pour configurer eclipse.ini.
Ne gardez pas beaucoup d'onglets ouverts dans l'éditeur. Mieux vaut avoir environ 20 onglets. Fermez régulièrement les onglets inutilisés. Pour ouvrir une ressource, nous pouvons toujours utiliser ctrl + shift + R et ctrl + shift + T (ressource java) au lieu d'ouvrir beaucoup d'onglets. + onglets ouverts). Vous pouvez laisser eclipse gérer cela automatiquement pour vous: Fenêtre-> Préférences-> Éditeurs-> fermerles éditeurs automatiquement 8 onglets ouverts est le montant avant que le signe >> n'apparaisse, j'ai donc défini 14 comme valeur par défaut. Lorsque vous ouvrez d'autres onglets, ceux auxquels vous avez accédé le moins récemment seront fermés. Lorsque tous les éditeurs sont sales ou coincés. S'il contient des modifications non enregistrées, vous pouvez demander d'enregistrer et de réutiliser (l'onglet sera fermé, un nouveau sera ouvert à sa place). Ou vous pouvez ouvrir un nouvel éditeur et augmenter ainsi le nombre d'onglets ouverts (le choix discret). Si vous souhaitez vous assurer que certains onglets ne se ferment jamais automatiquement, vous pouvez les épingler. Ceci en cliquant sur l'icône d'épingle (l'icône la plus à droite dans la barre d'outils, avec "éditeur d'épingle" comme info-bulle).
Allez dans Windows -> Préférences -> Validation et décochez les validateurs vous ne voulez pas ou dont vous n'avez pas besoin.
Allez dans Windows -> Préférences -> Général -> Apparence -> et décochez toute animation vous ne voulez pas ou dont vous n'avez pas besoin.
Allez dans Windows -> Préférences -> Maven et cochez 'ne pas mettre à jour automatiquement les dépendances' .
Eh bien, si vous développez une application GWT à l' aide d'Eclipse, voici la façon:
Erreur de mémoire insuffisante dans Eclipse
N'oubliez pas également d'ajouter les mêmes arguments de machine virtuelle à la configuration du mode hébergé.
Si vous utilisez Maven et Ivy, consultez leurs consoles au cas où elles accapareraient le traitement pendant les builds. J'utilise lierre et en plus j'ai certains fichiers JAR (internes) qui changent avec la même version, donc il faut s'entraîner tout le temps pour les récupérer.
Si vous avez défini votre projet sur un lecteur réseau, vous subirez également un décalage lors du type de processus de génération / lecture / écriture.
Désactivez / désinstallez les plugins dont vous n'avez pas besoin.
Fermer la perspective dont vous n'avez pas besoin
Fermer les connexions de base de données inutilisées
Dans des cas particuliers, de mauvaises performances peuvent être dues à des bases de données h2 ou nwire corrompues. Lisez Cinq conseils pour accélérer Eclipse PDT et nWire pour plus d'informations.
Là où je travaille, nous dépendons d'une machine virtuelle pour exécuter Debian . J'ai installé une autre version d'Eclipse sur la machine virtuelle pour tester les purpouses, mais cela crée parfois des conflits si j'ai l'autre version d'Eclipse en cours d'exécution. Il existe un dossier partagé que les deux versions d'Eclipse partagent. J'ai accidentellement quitté l'installation Debian Eclipse en cours d'exécution une fois en arrière-plan et cela m'a donné des fichiers de base de données corrompus.
Outre la configuration de eclipse.ini pour l'utilisation de la mémoire. J'ai configuré par "Options de démarrage et d'arrêt". Mon Eclipse flamboie rapidement maintenant.
La seule véritable façon d'accélérer Eclipse avec les plug-ins standard est de lui donner plus de mémoire et dans certains cas d'accéder à un espace de stockage plus rapide / un disque dur défragmenté.
Au-delà de cela, vous ne pouvez pas faire grand-chose en termes de performances: la plupart des plug-ins standard n'ont pas de coût d'exécution continu, même Mylyn est relativement rapide.
La mise à niveau vers la dernière JVM prise en charge sur votre machine peut également être utile.
Certaines personnes rétrogradent vers les anciennes versions d'Eclipse pour obtenir de meilleures performances. Il peut également être judicieux d'utiliser Eclipse classic au lieu des versions officielles.
Essayez-les. Il y a deux façons.
Première procédure
Reportez-vous à cet article.
http://www.javacodegeeks.com/2014/06/the-real-way-to-make-eclipse-run-faster-on-ubuntu.html
Deuxième procédure.
Exécutez la commande dans le terminal.
ramdisk
pour obtenir de meilleures performances et une réponse rapide pour Ubuntu.
Ramdisk fait partie de la mémoire système. Ubuntu utilise par défaut la moitié de la mémoire physique (RAM) comme ramdisk, et il est monté sur
/ dev / shm
, il peut être utilisé comme un espace disque normal (créez des fichiers et des dossiers et manipulez-les avec de meilleures performances plutôt que s'ils étaient stockés sur le disque dur). Si le disque virtuel utilise plus de la moitié de la RAM, les données seront déplacées dans l'espace de swap. Si le disque virtuel utilise moins, le reste peut toujours faire ce que fait la RAM.
Définir la limite supérieure du disque virtuel
Comme indiqué ci-dessus, le disque virtuel par défaut peut utiliser la moitié de la RAM. Si vous souhaitez modifier la limite supérieure, suivez les étapes ci-dessous:
Modifiez / etc / fstab par votre éditeur favori:
gksudo gedit / etc / fstab
Recherchez cette ligne et modifiez-la pour qu'elle ressemble à ceci (ajoutez cette ligne si elle n'existe pas, et remplacez 512M par ce que vous aimez.):
tmpfs / dev / shm par défaut tmpfs, taille = 512M 0 0
Redémarrer ou remonter
/ dev / shm
Monter / tmp sur ramdisk
Pour le rendre facile à utiliser, vous pouvez monter un répertoire dans
/dev/shm
en suivant les commandes:
mkdir / dev / shm / tmp
chmod 1777 / dev / shm / tmp
monter --bind / dev / shm / tmp / tmp