IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

 

Développons en Java avec Eclipse   0.80.1  
Copyright (C) 2003-2008 Jean-Michel DOUDOUX    (date de publication : 26/12/2008)

[ Précédent ] [ Sommaire ] [ Suivant ] [Télécharger ]      [Accueil ]

 

16. Des plug-ins pour le développement avec Java

 

chapitre 1 6

 

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 : ce plug-in permet de mettre en oeuvre l'outil open source du même nom qui permet de formatter le code source
  • Log4E : ce plug-in permet de faciliter la mise en oeuvre d'un système de log (log4J, api de logging du JDK 1.4 ou common logging)

 

16.1. Le plug-in Jalopy

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 :

  • d'indenter le code
  • de générer des modèles de commentaires Javadoc dynamiques en fonction des éléments du code à documenter (par exemple générer un tag @param pour chaque paramètre d'une méthode)
  • d'organiser l'ordre des clauses import
  • d'organiser l'ordre des membres d'une classe selon leur modificateur
  • de vérifier l'application de normes de codage,
  • ...

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.

 

16.2. Log4E

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

16.2.1. Installation

Il y a deux façons d'obtenir le plug-in et de l'installer :

  • télécharger l'archive .zip contenant le plug-in et le décompresser dans le répertoire d'installation d'Eclipse
  • utiliser la fonctionnalité de mise à jour d'Eclipse avec l'url : http://log4e.jayefem.de/update

 

16.2.2. Les paramètres

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.

16.2.3. Utilisation

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.

 


[ Précédent ] [ Sommaire ] [ Suivant ] [Télécharger ]      [Accueil ]

Copyright (C) 2003-2008 Jean-Michel DOUDOUX. Vous pouvez copier, redistribuer et/ou modifier ce document selon les termes de la Licence de Documentation Libre GNU, Version 1.1 ou toute autre version ultérieure publiée par la Free Software Foundation; les Sections Invariantes étant constitués du chapitre Préambule, aucun Texte de Première de Couverture, et aucun Texte de Quatrième de Couverture. Une copie de la licence est incluse dans la section GNU FreeDocumentation Licence. La version la plus récente de cette licence est disponible à l'adresse : GNU Free Documentation Licence.