Eclipse : organiser son code avec les Catégories

Je viens de découvrir une fonctionnalité méconnue d'Eclipse : les catégories.
Grâce à l'annotation javadoc @category, il est possible de définir des groupes virtuels de méthodes et de propriétés au sein des classes Java. Il est ensuite possible de les filtrer dans les vues Outline et Members, afin de n'afficher que ce qui vous intéresse.

Cette astuce peut être très pratique lorsque vous naviguez dans une classe imposante, et que vous cherchez à en comprendre la structure.
Pour peu que le code soit mal organisé, il se peut très bien que des méthodes métiers soient perdues au milieu des accesseurs, et que vous passiez à côté par inadvertance.

Lire la suite...

Java : @SuppressWarnings démystifié

L'annotation @SuppressWarnings permet de signaler au compilateur que l'on a conscience de réaliser une opération risquée, et qu'il peut donc arrêter de signaler un éventuel problème. Si l'annotation est standard, ses valeurs sont en revanche dépendantes du compilateur (d'après la JLS §9.6.1.5, seule "unchecked" est standard), car ils n'ont pas tous les mêmes capacités d'analyse statique du code.

Lire la suite...

Eclipse : plugin Get Spring Configuration 1.1.0

Voici une mise à jour de mon plugin "Spring Configuration" pour Eclipse.
Pour rappel, il permet de générer la configuration Spring des classes Java sélectionnées dans l'IDE.

Au rayon des nouveautés :

  • Il est désormais possible de sélectionner des fichiers Java ( fichier.png ), en plus des classes elles-mêmes ( classe.png ), ce qui est tout de même plus pratique. Au sein d'un fichier, toutes les classes "top-level" sont prises en compte.
  • Le plugin gagne en intelligence et génère maintenant des configurations différentes selon que les propriétés des classes sont de type primitif ( <property value=""/>) ou objet (<property ref=""/>). Les chaînes de caractères et les wrappers sont considérés comme des types primitifs.
  • Les propriétés des classes mères sont également détectées et prises en compte.

Installation :

  • Téléchargez la nouvelle version (en pièce jointe à ce billet), et décompressez-la dans le répertoire "plugins" d'Eclipse.
  • Si nécessaire, supprimez l'ancienne version du même répertoire
  • Redémarrez Eclipse.

Après avoir sélectionné une ou plusieurs classes ou fichiers Java, l'action "Get Spring Configuration" apparaît dans le menu contextuel. Son activation ouvre une console Eclipse contenant la configuration Spring des classes sélectionnées.

Commentaires, remarques, suggestions bienvenus !

Java BarCamp #2 : compte-rendu (1/2)

Ce mardi se tenait le second Barcamp organisé par Octo.
J'en profite pour remercier encore une fois Luc Bizeul pour son organisation impeccable, et pour m'avoir prévenu de l'événement.

Comme la fois précédente, 6 tables-rondes (3 salles x 2 séances) ont été organisées autour de sujets proposés par les participants eux-mêmes. Au final, les thèmes sélectionnés étaient :

  • Le web sémantique : Rest, RDF, OWL
  • Génération de code
  • Devoxx : compte-rendus et annonces
  • Intégration continue : Maven, Selenium, Gant, Gradle
  • ESB : Spring Intégration vs Mule
  • Groovy et Grails
Lire la suite...

Eclipse : plugin Get Spring Configuration

Voici un petit plugin que j'ai développé pour faciliter l'écriture des fichiers de configuration XML de Spring.

Concrètement, il suffit de sélectionner une ou plusieurs classes, et le plugin génère un squelette de configuration Spring de la forme suivante (les trois points représentent des valeurs générées par le plugin) :

  1. <bean id="..." class="...">
  2. <property name="..." value="" />
  3. <property name="..." ref="" />
  4. </bean>
Lire la suite...

Eclipse tips #2

Lorsque l'on travaille sur de nombreux projets, la vue affichant le contenu du workspace d'Eclipse devient rapidement illisible.
Dans ce cas, plusieurs solutions sont communément adoptées :

  • Fermer les projets inutilisés et filtrer leur affichage ; cette solution n'apporte évidemment pas grand chose lorsque l'on doit travailler sur plusieurs projets simultanément.
  • Répartir les projets dans plusieurs workspaces ; mais tout le paramétrage d'Eclipse doit alors être refait dans chaque workspace, et il n'est pas possible de les synchroniser automatiquement.

Nous allons explorer ici une troisième voie : l'utilisation de Working Sets, qui permettent de conserver tous les projets au sein d'un même workspace physique, tout en offrant une grande souplesse dans le choix des ressources affichées.

Lire la suite...

Eclipse tips #1 : save actions

"Save actions" est une nouvelle option introduite avec Europa (Eclipse 3.3), qui simplifie la vie du développeur.

Elle permet de définir un ensemble d'actions qui seront effectuées à chaque sauvegarde d'un fichier source Java, comme par exemple :

  • Formatage du code
  • Nettoyage des imports : suppression des imports inutiles, réordonnement...
  • Ajout des parenthèses autour des conditions, et des accolades autour du corps des tests et boucles
  • Ajout des mots-clés final et this si nécessaire
  • Suppression du code inutile : variables locales inutilisées, "casts" superflus...
  • Java 5+ : conversion automatique des boucles en boucles améliorées, ajout de l'annotation @Override...
  • ...
Lire la suite...

Eclipse RCP : développer un éditeur de texte avec coloration syntaxique

La société SERLI Informatique publie sur son blog un excellent article, très clair et progressif, démontrant comment développer un éditeur de texte doté de coloration syntaxique sous Eclipse RCP.

A lire d'urgence si vous vous intéressez à cette plateforme !