Développons en Java avec Eclipse 0.80.1 | |
Copyright (C) 2003-2008 Jean-Michel DOUDOUX | (date de publication : 26/12/2008) |
|
Il existe de nombreux plug-ins développés par des tiers pour enrichir Eclipse. Certains de ces plug-ins sont spécialement dédiés à faciliter le développement de code avec Java.
Ce chapitre va présenté plusieurs de ces plug-ins :
Jalopy est un utilitaire open source très pratique qui permet de formatter du code source Java et même de vérifier l'application de normes de codage.
Il permet notamment :
Il existe des plug-ins pour plusieurs IDE dont un pour Eclipse : il suffit de télécharger le fichier jalopy-eclipse-0.2.6.zip sur le site http://jalopy.sourceforge.net/download.html
Pour installer le plug-in, il faut décompresser le contenu de l'archive dans un réperoire temporaire et copier le répertoire de.hunsicker.jalopy.plugin.eclipse_0.2.6 dans le répertoire plugins d'Eclipse.
L'option "Jalopy preferences" du menu "Fenêtre" permet de paramétrer Jalopy
Pour la mise en oeuvre, il suffit d'utiliser le menu contextuel "Format with Jalopy" de l'éditeur de code Java.
Exemple : |
package com.moi.test;
public class TestJalopy {
public static void main(String[] args) {}
public void maMethode(int a, int b) {}
private int maMethode2(int a) { return a; }
public void maMethode3() {}
} |
Résultat : |
package com.moi.test;
/**
* DOCUMENT ME!
*
* @author $author$
* @version $Revision$
*/
public class TestJalopy {
/**
* DOCUMENT ME!
*
* @param args DOCUMENT ME!
*/
public static void main(String[] args) {
}
/**
* DOCUMENT ME!
*
* @param a DOCUMENT ME!
* @param b DOCUMENT ME!
*/
public void maMethode(int a, int b) {
}
/**
* DOCUMENT ME!
*/
public void maMethode3() {
}
/**
* DOCUMENT ME!
*
* @param a DOCUMENT ME!
*
* @return DOCUMENT ME!
*/
private int maMethode2(int a) {
return a;
}
} |
Le formattage du code source est réalisé en tenant compte des nombreux paramètres définis dans Jalopy.
Il est également possible de demander le formattage de l'ensemble des fichiers source Java contenus dans un ou plusieurs packages ou répertoires. Il suffit de sélectionner le ou les packages ou répertoires et de sélectionner l'option "Format" du menu contextuel.
Log4E est un plug-in gratuit dont le but est de faciliter l'utilisation d'une API de logging dans du code java.
Log4E propose en standard d'utiliser 3 API : Log4J, l'api Logging du JDK 1.4 et l'api Common Logging du projet Jakarta.
Le site officiel de ce plug-in est à l'url : http://log4e.jayefem.de/index.php/Main_Page
Il y a deux façons d'obtenir le plug-in et de l'installer :
Le plug-in Log4E possède de nombreux paramètres modifiables dans la fenêtre de gestion des paramètres.
Un des paramètres le plus important se situe à l'arborescence Log4E / Profile / Templates
Le profile permet de sélectionner l'api qui sera utilisée par le plug-in lors de la génération de code pour les opérations demandées.
Exemple : |
package com.jmd.test.java;
public class TestLog4E {
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println("resultat = " + additionner(a, b));
}
public static int additionner(int a, int b) {
int res = a + b;
return res;
}
} |
L'api de logging sélectionnée dans la préférences pour les exemples de cette section est celle du JDK 1.4.
Le menu contextuel de l'éditeur de code se voie ajouter une nouvelle option nommée Log4E.
Avant de pouvoir utiliser une de ces options, il est nécessaire de sauvegarder le code source pour permettre au plug-in de réaliser les modifications.
Cette nouvelle entrée du menu contextuel, propose plusieurs options réparties en 4 groupes.
Toute opérations impliquant une modification du code est soumise à l'approbation de l'utilisation sous la forme d'une vue permettant de comparer le code avant et après modification et d'accepter ou non les modifications.
L'option « Declare Logger » permet de demander l'insertion dans le code des clauses imports ainsi que la déclaration des objets nécessaires à l'utilisation de l'api de logging .
Exemple : |
package com.jmd.test.java;
import java.util.logging.Level;
import java.util.logging.Logger;
public class TestLog4E {
/**
* Logger for this class
*/
private static final Logger logger = Logger.getLogger(TestLog4E.class
.getName());
public static void main(String[] args) {
int a = 1;
int b = 2;
System.out.println("resultat = " + additionner(a, b));
}
public static int additionner(int a, int b) {
int res = a + b;
return res;
}
} |
L'option “Insert Log Statement At The Position ...” permet d'insérer du code pour utiliser l'api de logging.
Pour utiliser cette option, il est nécessaire de placer le curseur de l'éditeur de code dans une méthode, sinon un message d'erreur est affiché.
L'option “Insert Log Statement For This Method” permet d'insérer automatique des appels à l'api de logging dans la méthode : au début de la méthode, à la fin de la méthode et dans les blocs try/catch.
Exemple avec la méthode additionner() |
...
public static int additionner(int a, int b) {
if (logger.isLoggable(Level.FINE)) {
logger.fine("start");
}
int res = a + b;
if (logger.isLoggable(Level.FINE)) {
logger.fine("end");
}
return res;
}
... |
Pour utiliser cette option, il est nécessaire de placer le curseur de l'éditeur de code dans une méthode, sinon un message d'erreur est affiché.
L'option “Insert Log Statement For This Class” est identique à l'option précédente mais effectue les traitements sur toute la classe.
L'option “Replace System.out's For This Method” permet de remplacer les utilisations de la classe System.out ou System.err par l'utilisation de l'api de logging.
Pour utiliser cette option, il est nécessaire de placer le curseur de l'éditeur de code dans une méthode, sinon un message d'erreur est affiché.
L'option “Replace System.out's For This Class” est identique à l'option précédente mais effectue les traitements sur toute la classe.
|