Dans un contexte d'entreprise, il est souvent nécessaire de garder une configuration d'IDE stable tout au long du projet et s'assurer que l'IDE réponde rapidement. Il est également important que les configurations pour tous les développeurs soient identiques et stables pour éviter l'effet "But it works on my machine!" (ie. un développeur a mis à jour un plugin ajoutant une fonctionnalité qui corrige un bug. Le problème est que le bug est résolu localement, mais pas pour les autres développeurs qui n'ont pas mis à jour leur plugin...).
Pour améliorer sa productivité sur Eclipse, il n'y a pas une solution "clé en main" mais on retient d'une manière générale les règles suivantes :
- désactiver tous les rapports d'usage,
- désactiver les validations inutiles,
- désactiver les mises à jours automatiques,
- limiter les vérifications au démarrage
- limiter les temps d'indexation...
Ensuite, à chaque équipe projet d'adapter ces règles selon les besoins...
Voici quelques optimisations à mettre en place sur Eclipse dans un contexte d'IDE Eclipse 3.7.2 avec JBoss Tools, GWT et Subclipse.
Paramétrage Eclipse.ini
Editer le eclipse.ini pour modifier le paramétrage selon votre configuration physique. Ajouter les options suivantes dans le Eclipse.ini, juste après le -vmargs
4Go de RAM
-Dosgi.requiredJavaVersion=1.5 -Xms256m -Xmx1024m -Xss2m -XX:PermSize=128m -XX:MaxPermSize=256m
8Go de RAM
-Dosgi.requiredJavaVersion=1.5 -Xms512m -Xmx2048m -Xss2m -XX:PermSize=128m -XX:MaxPermSize=384m
Paramétrages des préférences
Validation > Suspend All validators
General > Startup & Shutdown
Désactiver les services suivants :
- Marketplace Client
- Usage Data Gathering Plugin
- Usage Data Recording Plugin
- Equinox Provisioning Platform
- JAX-WS Utils
- M2e Marketplace
- Mylin Tasks UI
- Mylin Team UI
- Automatic Update Scheduler
- JBoss Central
- Forge Tools
- JBoss Tools Usage Reporting
- Sublipse Usage Reporting
General > Editors > Text Editors > Spelling > Désactiver le "Spell Checking"
Usage Data Collector > Désactiver "Enable capture"
Team > SVN > Usage Reporting > Désactiver "Allow Sublipse team to receive statistics..."
Jboss Tools > JBoss Central > Désactiver "show JBoss Central on Startup"
JBoss Tools > Usage Reporting > Désactiver "Please allow the JBoss Tools team to receive statistics..."
JBoss Tools > CDI > CDI Validators > Désactiver "Enable Validation"
JBoss Tools > Web > Web XML Validation > Désactiver "Enable Validation"
Google > Désactiver "Notify me about updates"
Maven > Désactiver "Update Maven projects on startup"
Install/Updates > Automatic Updates > Désactiver "Automatically find new updates and notify me"
Autres préférences pour améliorer la productivité
General > Editors > Text Editors > Activer "Show Line number"
Run/Debug > Console > Désactiver "Limit console output"
Et vous ?
Quelles optimisations utilisez-vous ? Quelles astuces pour améliorer votre productivité sous Eclipse ? N'hésitez pas à partager sur vos bonnes pratiques ;-D
Dans le « eclipse.ini » : utilisation du jvm.dll au lieu du javaw.exe
-vm c:/Chemin/vers/JDKs/jdk1.6.0_05/jre/bin/server/jvm.dll
Pour information, le « javaw.exe » se base sur le « jvm.dll ». L’avantage avec ce dernier, c’est qu’on retrouve un processus « eclipse.exe » au lieu de « javaw » (ce qui est plus propre) et puis, le javaw appelle la jvm avec un heap size plus conséquent.
Sinon, toujours dans le « eclipse.ini », j’ai désactivé la vérification des classes au démarrage avec : -Xverify:none.
(source :http://pic.dhe.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=%2Fcom.ibm.websphere.express.doc%2Finfo%2Fexp%2Fae%2Furun_rconfproc_jvm.html)
@Zakaria : Merci pour ces infos ! En effet, j’ajoute cette « astuce » dans mon eclipse.ini.
Concernant
l’optimisation de l’article, finalement, plutôt que d’installer Jboss
Tools et tout désactiver, Il est en effet plus simple de ne pas
l’installer du tout…. Ca reste un plugin assez « couteux » surtout sur
les projets conséquents.