Vous êtes sur la page 1sur 182

Dveloppons en Java avec Eclipse

Jean Michel DOUDOUX

Table des matires


Dveloppons en Java avec Eclipse.....................................................................................................................1 Prambule............................................................................................................................................................2 A propos de ce document .........................................................................................................................2 Note de licence .........................................................................................................................................2 Marques dposes....................................................................................................................................3 Historique des versions............................................................................................................................3 1. Introduction.....................................................................................................................................................4 1.1. Les diffrentes versions d'Eclipse.....................................................................................................4 2. Installation.......................................................................................................................................................6 2.1. Installation d'Eclipse sous Windows .................................................................................................6 2.1.1. Installation Eclipse 1.0............................................................................................................6 2.1.2. Installation Eclipse 2.0............................................................................................................6 2.1.3. Installation des traductions de la version 2.x..........................................................................7 2.2. Installation Eclipse sous Linux.........................................................................................................9 2.2.1. Installation Eclipse 1.0 sous Mandrake 8.1.............................................................................9 2.2.2. Installation Eclipse 2.1 sous Mandrake 8.0...........................................................................10 3. Le Workspace................................................................................................................................................12 3.1. La cration de nouvelles entits......................................................................................................12 3.1.1. La cration d'un projet...........................................................................................................13 3.1.2. La cration d'un rpertoire .....................................................................................................14 3.1.3. La cration d'un fichier ..........................................................................................................14 3.2. La duplication d'un lment............................................................................................................15 3.3. Le dplacement d'un lment ..........................................................................................................16 3.4. Renommer un lment....................................................................................................................16 3.5. La suppression d'un lment...........................................................................................................17 3.6. Importation ......................................................................................................................................17 3.7. Exportation ......................................................................................................................................19 4. Le workbench................................................................................................................................................23 4.1. Les perspectives..............................................................................................................................24 4.2. Les vues et les diteurs...................................................................................................................25 4.2.1. Les diteurs ............................................................................................................................26 4.2.2. les vues..................................................................................................................................27 4.3. Organiser les composants de la perspective ....................................................................................27 4.4. Fermer le workbench......................................................................................................................28 5. Les fonctions pratiques du workbench.......................................................................................................30 5.1. La fonction de recherche .................................................................................................................30 5.1.1. La recherche dans les fichiers...............................................................................................30 5.1.2. L'exploitation des rsultats de recherche ...............................................................................32 5.2. La liste des tches...........................................................................................................................32 5.2.1. La cration d'une tche..........................................................................................................33 5.2.2. La cration d'une tche associe un lment......................................................................33 5.2.3. La suppression d'une tache associe un lment................................................................34 5.3. La liste des signets..........................................................................................................................34 5.3.1. La cration d'un signet ...........................................................................................................35 5.3.2. La suppression d'un signet .....................................................................................................36 5.4. La comparaison d'lments.............................................................................................................36

Dveloppons en Java avec Eclipse

Table des matires


6. Le Java Development Tooling (JDT)..........................................................................................................38 6.1. Les projets de type Java..................................................................................................................38 6.1.1. La cration d'un nouveau projet Java....................................................................................38 6.1.2. Les paramtres d'un projet Java............................................................................................40 6.2. La cration d'entit..........................................................................................................................42 6.2.1. Les packages ..........................................................................................................................43 6.2.2. Les classes.............................................................................................................................43 6.2.3. Les interfaces .........................................................................................................................45 6.3. Les vues du JDT ..............................................................................................................................45 6.3.1. La vue "Packages".................................................................................................................45 6.3.2. La vue "Hirarchie"...............................................................................................................47 6.4. L'diteur de code.............................................................................................................................49 6.4.1. Utilisation de l'diteur de code..............................................................................................49 6.4.2. Compltion de code...............................................................................................................50 6.4.3. Affichage des paramtres sous la forme d'une bulle d'aide ...................................................51 6.4.4. L'diteur et la vue Structure..................................................................................................52 6.4.5. La coloration syntaxique.......................................................................................................52 6.4.6. Utilisation des modles.........................................................................................................54 6.4.7. La gestion des importations ...................................................................................................55 6.4.8. La gnration de getter et setter............................................................................................57 6.4.9. Formater le code....................................................................................................................57 6.4.10. Mise en commentaire d'une portion de code.......................................................................58 6.4.11. Protger une portion de code avec un bloc try/catch ...........................................................59 6.4.12. Les erreurs...........................................................................................................................60 6.5. Excution d'une application............................................................................................................60 6.6. Gnration de la documentation javadoc........................................................................................62 6.7. Dfinition du JRE utiliser............................................................................................................65 6.8. Utilisation de l'historique local.......................................................................................................65 6.9. Externaliser les chanes...................................................................................................................67 6.10. Ouverture d'un type .......................................................................................................................70 6.11. Utilisation du scrapbook...............................................................................................................71 7. Deboguer du code Java.................................................................................................................................77 7.1. La perspective "debug"...................................................................................................................77 7.2. Les vues spcifiques au dbogage..................................................................................................77 7.2.1. La vue "Dbogage"...............................................................................................................78 7.2.2. La vue "Variables"................................................................................................................78 7.2.3. La vue "Points d'arrts".........................................................................................................79 7.2.4. La vue "Expressions"............................................................................................................81 7.2.5. La vue "Affichage"................................................................................................................82 7.3. Mise en oeuvre du dbogueur.........................................................................................................83 7.3.1. Mettre en place un point d'art..............................................................................................83 7.3.2. Excution dans le dbogueur .................................................................................................83 8. Le refactoring................................................................................................................................................85 8.1. Extraction d'une mthode ................................................................................................................86 8.2. Intgrer............................................................................................................................................89 8.3. Renommer.......................................................................................................................................90 8.4. Dplacer..........................................................................................................................................93 8.5. Changer la signature de la mthode................................................................................................94 8.6. Convertir une classe anonyme en classe imbrique ........................................................................94 8.7. Convertir un type imbriqu au niveau suprieur .............................................................................95 8.8. Extraire ............................................................................................................................................95 8.9. Transferer........................................................................................................................................95 8.10. Extraire une interface....................................................................................................................96 Dveloppons en Java avec Eclipse ii

Table des matires


8. Le refactoring 8.11. Utiliser le supertype si possible....................................................................................................97 8.12. Convertir la variable locale en zone ..............................................................................................98 8.13. Encapsuler la zone........................................................................................................................99 8.14. Extraire la variable locale...........................................................................................................100 8.15. Extraire une constante.................................................................................................................101 9. L'aide dans Eclipse.....................................................................................................................................103 9.1. L'aide en ligne...............................................................................................................................103 9.2. L'aide Javadoc...............................................................................................................................103 9.3. Le plug in Java docs de Crionics..................................................................................................104 10. Ant et Eclipse.............................................................................................................................................106 10.1. Structure du projet .......................................................................................................................106 10.2. Cration du fichier build.xml......................................................................................................108 10.3. Excuter Ant...............................................................................................................................109 10.4. Les paramtres............................................................................................................................110 10.5. Rsolution des problmes...........................................................................................................111 10.5.1. Utilisation de caractres accentus....................................................................................111 10.5.2. Impossible de lancer la tache javadoc...............................................................................111 10.5.3. Impossible d'utiliser la tche JUnit ....................................................................................112 10.6. Un exemple complet...................................................................................................................112 11. JUnit et Eclipse..........................................................................................................................................115 11.1. Paramtrage de l'environement...................................................................................................115 11.2. Ecriture des cas de tests..............................................................................................................116 11.3. Excution des cas de tests...........................................................................................................119 12. CVS et Eclipse...........................................................................................................................................122 12.1. Installation de cvsnt....................................................................................................................122 12.2. La perspective CVS....................................................................................................................128 12.2.1. La cration d'un emplacement vers un rfrentiel.............................................................129 12.2.2. Partager un projet..............................................................................................................130 12.2.3. Voir le projet dans la perspective CVS.............................................................................132 12.3. L'utilisation des rvisions ............................................................................................................133 12.3.1. Crer une rvision.............................................................................................................133 12.3.2. Gestion des rvisions.........................................................................................................133 12.4. La gestion des versions d'un projet.............................................................................................134 12.4.1. La cration d'une version d'un projet .................................................................................134 12.5. Obtenir une version dans le worskspace.....................................................................................135 13. Les autres perspectives.............................................................................................................................136 13.1. La perspective Ressource ............................................................................................................136 13.1.1. La vue "Navigateur"..........................................................................................................136 14. Les plugins...............................................................................................................................................138 14.1. Informations sur les plug ins installs .........................................................................................138 14.2. Un exemple avec le module JadClipse sous Eclipse 1.0............................................................140 14.3. Le plug in Jalopy .........................................................................................................................140 15. La gestion de la plateforme....................................................................................................................143 15.1. Recherche et installation des mises jour..................................................................................143 15.2. Installation d'un nouveau plug in................................................................................................145 15.3. Sauvegarde et restauration dune configuration.........................................................................149 15.4. Rsolution des problmes de dpendances.................................................................................150 Dveloppons en Java avec Eclipse iii

Table des matires


16. Le dveloppement sans Java....................................................................................................................153 16.1. CDT pour le dveloppement en C / C++....................................................................................153 16.1.1. Installation du CDT...........................................................................................................153 16.1.2. Cration d'un premier projet ..............................................................................................158 16.1.3. Installation de MinGW......................................................................................................161 16.1.4. Premire configuration et excution ..................................................................................163 16.1.5. Utilisation du CDT............................................................................................................164 17. Le dveloppement d'interfaces graphiques............................................................................................165 17.1. Eclipse et SWT...........................................................................................................................165 17.1.1. Configurer Eclipse pour dvelopper des applications SWT.............................................165 17.1.2. Un exemple trs simple.....................................................................................................166 17.2. Le plug in Eclipse V4all.............................................................................................................167 17.2.1. Installation.........................................................................................................................167 17.2.2. Utilisation..........................................................................................................................168 17.2.3. Un exemple simple............................................................................................................170 17.3. Le plug in W4Eclipse ..................................................................................................................171 17.4. SWT designer ..............................................................................................................................171 18. Annexes......................................................................................................................................................172 Annexe A : GNU Free Documentation License..................................................................................172 Annexe B : Webographie....................................................................................................................176

Dveloppons en Java avec Eclipse

iv

Dveloppons en Java avec Eclipse

Version 0.30
du 04/01/2004
par JeanMichel DOUDOUX

Dveloppons en Java avec Eclipse

Prambule
A propos de ce document
Ce document fait suite mon premier tutorial "Dveloppons en Java". C'est un didacticiel qui se propose de fournir des informations pratiques sur l'utilisation d'Eclipse. Je suis ouvert toutes ractions ou suggestions concernant ce document notamment le signalement des erreurs, les points claircir, les sujets ajouter, etc. ... N'hsitez pas me contacter : jeanmichel.doudoux@wanadoo.fr Ce document est disponible aux formats HTML et PDF l'adresse suivante : http://perso.wanadoo.fr/jm.doudoux/java/ Ce manuel est fourni en l'tat, sans aucune garantie. L'auteur ne peut tre tenu pour responsable des ventuels dommages causs par l'utilisation des informations fournies dans ce document. La version pdf de ce document est ralise grce l'outil HTMLDOC 1.8.23 de la socit Easy Software Products. Cet excellent outil freeware peut tre tlcharg l'adresse : http://www.easysw.com

Note de licence
Copyright (C) 20032004 DOUDOUX Jean Michel 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 ultrieure publie par la Free Software Foundation; les Sections Invariantes tant constitues des chapitres : Dveloppons en Java avec Eclipse Introduction Installation d'Eclipse Le workspace Le workbench Les fonctions pratiques du workbench d'Eclipse Le Java development tooling (JDT) d'Eclipse Deboguer du code java Le refactoring L'aide dans Eclipse Ant et Eclipse JUnit et Eclipse CVS et Eclipse Les autres perspectives d'Eclipse Les plugins La gestion de la plateforme Le dveloppement sans Java Le dveloppement d'interfaces graphiques Annexes aucun Texte de Premire de Couverture, et aucun Texte de Quatrime de Couverture. Une copie de la licence est incluse dans la section GNU FreeDocumentation Licence. La version la plus rcente de cette licence est disponible l'adresse : GNU Free Documentation Licence. Dveloppons en Java avec Eclipse 2

Marques dposes
Sun, Sun Microsystems, le logo Sun et Java sont des marques dposes de Sun Microsystems Inc. Les autres marques et les nom de produits cits dans ce document sont la proprit de leur diteur respectif.

Historique des versions


Version Date Evolutions

0.10 bta 08/04/2003 1ere version diffuse sur le web. Ajout des chapitres Junit, Ant, Aide, Dboguer du code Java Ajout des sections : importation, exportation, gnration javadoc, informations sur les plugins, le plugin Jalopy 0.20 13/07/2003 Complments ajouts au chapitre JDT Application d'une feuille de styles CSS pour la version HTML Corrections et ajouts divers Ajout dans le chapitre "JDT", "deboguer du code Java" et "La gestion de la plateforme" Ajout du chapitre "le refactoring" , "le dveloppement sans java" et "Le 04/01/2004 dveloppement d'interfaces graphiques" Rduction de la taille des images : rduction de la taille et passage en niveau de gris pour la version PDF Corrections et ajouts divers

0.30

Dveloppons en Java avec Eclipse

1. Introduction

Eclipse est un environnement de dveloppement intgr (Integrated Development Environment) dont le but est de fournir une plateforme modulaire pour permettre de raliser des dveloppements informatiques. I.B.M. est l'origine du dveloppement d'Eclipse qui est d'ailleurs toujours le coeur de son outil Websphere Studio Workbench (WSW), lui mme la base de la famille des derniers outils de dveloppement en Java d'I.B.M. Tout le code d'Eclipse a t donn la communaut par I.B.M afin de poursuivre son dveloppement. Eclipse utilise normment le concept de modules nomms "plugins" dans son architecture. D'ailleurs, hormis le noyau de la plateforme nomm "Runtime", tout le reste de la plateforme est dvelopp sous la forme de plugins. Ce concept permet de fournir un mcanisme pour l'extension de la plateforme et ainsi fournir la possiblit des tiers de dvelopper des fonctionnalits qui ne sont pas fournies en standard par Eclipse. Les principaux modules fournis en standard avec Eclipse concernent Java mais des modules sont en cours de dveloppement pour d'autres langages notamment C++, Cobol, mais aussi pour d'autres aspects du dveloppement (base de donnes, conception avec UML, ). Ils sont tous dvelopps en Java soit par le projet Eclipse soit par des tiers commerciaux ou en open source. Les modules agissent sur des fichiers qui sont inclus dans le workspace. Le workspace regroupe les projets qui contiennent une arborescence de fichiers. Bien que dvelopp en Java, les performances l'excution d'Eclipse sont trs bonnes car il n'utilise pas Swing pour l'interface hommemachine mais un toolkit particulier nomm SWT associ la bibliothque JFace. SWT (Standard Widget Toolkit) est dvelopp en Java par IBM en utilisant au maximum les composants natifs fournis par le systme d'exploitation sous jacent. JFace utilise SWT et propose une API pour faciliter le dveloppement d'interfaces graphiques. Eclipse ne peut donc fonctionner que sur les plateformes pour lesquelles SWT a t port. Ainsi, Eclipse 1.0 fonctionne uniquement sur les plateformes Windows 98/NT/2000/XP et Linux. SWT et JFace sont utiliss par Eclipse pour dvelopper le Workbench qui organise la structure de la plateforme et les intractions entre les outils et l'utilisateur. Cette structure repose sur trois concepts : la perspective, la vue et l'diteur. La perspective regoupe des vues et des diteurs pour offrir une vision particulire des dveloppements. En standard, Eclipse propose huit perspectives. Les vues permettent de visualiser et de slectionner des lments. Les diteurs permettent de visualiser et de modifier le contenu d'un lements du workspace.

1.1. Les diffrentes versions d'Eclipse

Dveloppons en Java avec Eclipse

Il existe quatre grandes catgories de versions. Chacune de ces catgories possde un nombre plus ou moins important de versions nommes "build" : "Nightly Builds" : version en cours de dveloppement cre de faon journalire contenant les modifications de la journe. "Integration Builds" : assemblage des sousprojets pour la ralisation de tests "Stable Builds" : version teste "Releases" : version diffuse et "fiable" Il existe plusieurs versions de type "Realease" d'Eclipse : Date Novembre 2003 Juillet 2003 Avril 2003 Novembre 2002 Septembre 2002 Juillet 2002 Novembre 2001 Version 2.1.2. 2.1.1. 2.1. 2.0.2 2.0.1. 2.0 1.0

La version 3.0 est en cours de dveloppement. Le projet Eclipse est divis en quatre grands projets : le projet "Eclipse" : ce projet dveloppe l'architecture et la structure de la plateforme Eclipse. le projet "Eclipse Tools" : ce projet dveloppe ou intgre des outils la plateforme pour permettre des tiers d'enrichir la plateforme. Il possde plusieurs sous projets tel que CDT (plug in pour le developpeemnt en C/C++), GEF (Graphical Editing Framework ), EMF (Eclipse Modeling Framework), Cobol (plug in pour le developpement en Cobol), ... le projet "Eclipse Technology" : ce projet, divis en trois catgories, propose d'effectuer des recherches sur des volutions de la plateforme et des technologies qu'elle met en oeuvre. le projet "Eclipse Web Tools Platform" : ce projet pour but d'enrichir la plateforme enfin de proposer un framework et des services pour la cration d'outils de dveloppement d'applications web.

Dveloppons en Java avec Eclipse

2. Installation

Eclipse 1.0 peut tre install sur les plateformes Windows ( 98ME et SE / NT / 2000 / XP) et Linux. Eclipse 2.0 peut tre install sur les plateformes Windows ( 98ME et SE / NT / 2000 / XP), Linux, Solaris 8, QNX, AIX, HPUX. Eclipse 2.1 peut tre install sur toutes les plateformes sites prcdemment mais aussi sous MAC OS X. Quel que soit la plateforme, il faut obligatoirement qu'un JDK 1.3 minimum y soit install. La version 1.4 est fortement recommande pour amliorer les performances et pouvoir utiliser le remplacement de code lors du debogage (technologie JPDA). Lors de son premier lancement, Eclipse cr par dfaut un rpertoire nomm Workspace qui va contenir les projets.

2.1. Installation d'Eclipse sous Windows

2.1.1. Installation Eclipse 1.0


Il faut tlcharger le fichier eclipseSDKR1.0win32.zip (36,5 Mo) et le dzipper. Pour lancer Eclipse sous Windows, il suffit de double cliquer sur le fichier eclipse.exe. Si la splash screen reste affiche et que l'application ne se lance pas, c'est qu'elle n'arrive pas trouver le JDK requis.

2.1.2. Installation Eclipse 2.0


Il faut tlcharger le fichier eclipseSDK2.0.2win32.zip sur le site : http://www.eclipse.org/downloads/index.php Il suffit ensuite d' extraire l'archive dans un rpertoire par exemple c:\java et d'xcuter le programme eclipse.exe situ dans le rpertoire eclipse dzipp.

Dveloppons en Java avec Eclipse

L'application termine l'installation, puis s'excute.

2.1.3. Installation des traductions de la version 2.x


Par dfaut, la langue utilise dans Eclipse est l'anglais. I.B.M. propose des traductions pour la version 2.0.2 d'Eclipse dans diffrentes langues. Il faut tlcharger le fichier eclipsenlsSDK2.0.x.zip sur la page http://download2.eclipse.org/downloads/drops/L2.0.x%20Translations200301071000/index.php Il suffit ensuite de le dzipper dans le rpertoire qui contient le rpertoire Eclipse (par exemple : c:\java). Avec une connexion internet, lors de l'xcution suivante, l'application vrifie si une mise jour des traductions n'est pas disponible.

Un clic sur "Oui" ouvre une bote de dialogue qui permet de slectionner la mise jour installer.

Dveloppons en Java avec Eclipse

Il suffit de cocher la mise jour souhaite et de cliquer sur "Fin". Les mises jour sont tlcharges et installes. L'application doit tre redmarre.

L'application redmarre automatiquement, localise dans la langue du poste.

Pour la version 2.1.1., il faut tlcharger le fichier correspondant au systme d'exploitation utilis sur la page : http://download.eclipse.org/downloads/drops/L2.1.x%20Translations200307021300/index.php La procdure d'installation est identique celle de la version 2.0. Pour la version 2.1.1., il existe aussi un patch pour les traductions tlchargeable l'url :

http://download2.eclipse.org/downloads/drops/L2.1.x%20Translations200307021300/eclipse2.1.1.1SDKLanguag Ce patch doit tre install aprs avoir install les traductions initiales de la version 2.1.1 en dzippant le contenu du fichier dans le rpertoire qui contient le rpertoire Eclipse. Dveloppons en Java avec Eclipse 8

2.2. Installation Eclipse sous Linux

2.2.1. Installation Eclipse 1.0 sous Mandrake 8.1


Il faut installer un JDK 1.3 minimum, par exemple celui fourni par IBM qu'il est possible d'installer grce au gestionnaire de paquet.

Il faut ajouter le rpertoire bin du JDK la variable systme PATH pour permettre au systme de trouver les excutables ncessaires. PATH=$PATH:/opt/IBMJava213/bin Si les excutables ne sont pas touvs, une bote de dialogue affiche le message suivant :

Pour excuter Eclipse, il suffit de lancer eclipse dans un shell. Exemple : [jumbo@charlemagne eclipse]$ eclipse data workspace

Dveloppons en Java avec Eclipse

2.2.2. Installation Eclipse 2.1 sous Mandrake 8.0


Il faut installer un JDK 1.3 minimum, par exemple celui fourni par IBM qu'il est possible d'installer grce au gestionnaire de paquet. Il faut aussi que la variable JAVA_HOME contienne le chemin vers le JDK. Exemple :
[java@localhost eclipse]$ echo $JAVA_HOME /usr/java/jdk1.3.1 [java@localhost eclipse]$ java version java version "1.3.1" Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1b24) Java HotSpot(TM) Client VM (build 1.3.1b24, mixed mode) [java@localhost eclipse]$ which java /usr/java/jdk1.3.1/bin/java

Il existe deux versions pour Linux : une utilisant Motif et une autre utilisation GTK 2. Pour la version Motif, il faut tlcharger le fichier eclipseSDK2.1.1linuxmotif.zip. Il faut dzipper le fichier dans un rpertoire, par exemple /opt avec l'utilisateur root. Exemple :
[root@localhost opt]# unzip eclipseSDK2.1linuxmotif.zip Archive: eclipseSDK2.1linuxmotif.zip creating: eclipse/ inflating: eclipse/libXm.so.2.1 linking: eclipse/libXm.so > libXm.so.2.1 linking: eclipse/libXm.so.2 > libXm.so.2.1 creating: eclipse/plugins/ creating: eclipse/plugins/org.eclipse.core.boot_2.1.0/ inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/boot.jar inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/splash.bmp inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/boot.xml inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/plugin.properties inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/plugin.xml inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/.options inflating: eclipse/plugins/org.eclipse.core.boot_2.1.0/about.html ...

Dveloppons en Java avec Eclipse

10

Pour utiliser excuter Eclipse avec un utilisateur sans privilge particulier, il faut dfinir la variable LD_LIBRAY_PATH et excuter Eclipse Exemple :
[java@localhost [java@localhost total 2004 drwxrwxrx 5 drwxrxrx 11 rwrwr 1 rwrwr 1 rwxrxrx 1 drwxrwxrx 10 rwrwr 1 rwrwr 1 lrwxrwxrwx 1 * lrwxrwxrwx 1 .1* rwxrxrx 1 rwrwr 1 drwxrwxrx 64 drwxrwxrx 2 rwrwr 1 [java@localhost [java@localhost java]$ cd /opt/eclipse eclipse]$ ll root root root root root root root root root root root root root root root root root root root root 4096 4096 59 15048 41003 4096 10489 619 12 Mar Jul Mar Mar Mar Mar Mar Mar Jul 27 10 27 27 27 27 27 27 10 22:11 00:12 22:11 22:11 22:11 22:11 22:11 22:11 00:11 ./ ../ .eclipseproduct cplv10.html eclipse* features/ icon.xpm install.ini libXm.so > libXm.so.2.1

12 Jul 10 00:11 libXm.so.2 > libXm.so.2

root root 1915756 Mar 27 22:11 libXm.so.2.1* root root 4743 Mar 27 22:11 notice.html root root 4096 Mar 27 22:11 plugins/ root root 4096 Mar 27 22:11 readme/ root root 16549 Mar 27 22:11 startup.jar eclipse]$ LD_LIBRAY_PATH=/opt/eclipse:$LD_LIBRARY_PATH eclipse]$ /opt/eclipse/eclipse data $HOME/workspace

Si la variable LD_LIBRAY_PATH n'est correctement valorise, le message d'erreur suivant est affich et Eclipse ne peut pas se lancer. Exemple :
[java@localhost java]$ /opt/eclipse/eclipse data $HOME/workspace /opt/eclipse/eclipse: error while loading shared libraries: libXm.so.2: cannot l oad shared object file: No such file or directory

Dveloppons en Java avec Eclipse

11

3. Le Workspace

Le workspace est l'entit qui permet de conserver les projets et leur contenu. Physiquement c'est un rpertoire du systme d'exploitation qui contient une hirarchie de fichiers et de rpertoires. Il y a d'ailleurs un rpertoire pour chaque projet la racine du workspace. Il est possible de parcourir cette arborescence et d'en modifier les fichiers avec des outils externes Eclipse. Le workspace contient tous les lments dvelopps pour le projet : il est possible de crer, de dupliquer, de renommer ou de supprimer des lments. Ces oprations de gestion sont ralises dans le vue Navigateur.

3.1. La cration de nouvelles entits


Dans Eclipse, on peut crer diffrents types d'entits qui seront stockes dans le workspace : des projets des rpertoires pour organiser les projets des ressources de diffrents types qui sont des fichiers Il existe plusieurs faons de crer ces entits : l'option Nouveau du menu Fichier l'option Nouveau du menu contextuel de la vue Navigateur le bouton Assistant nouveau dans la barre d'outils La cration est ralise grce un assistant dont le contenu est dynamique en fonction de l'lment crer. L'option "Nouveau" du menu "Fichier" ou du menu contextuel de la vue Navigateur propose le mme sous menu :

Il est ainsi possible de crer rapidement un projet, un rpertoire ou un fichier. Si le fichier est d'un type particulier, un clic sur "Autre" ouvre un assistant.

Dveloppons en Java avec Eclipse

12

3.1.1. La cration d'un projet


Le projet est l'unit de base du workspace. Chaque ressource doit tre incluse directement dans un projet ou indirectement dans un rpertoire appartenant un projet. L'assistant permet de slectionner le type du projet crer. Il suffit alors de slectionner la famille, le type du projet et de cliquer sur "Suivant".

La cration se fait grce un assistant qui demande le nom du nouveau projet. Ce nom ne doit pas contenir de blanc ou des caractres non alphabtiques.

Un clic sur "Fin" dclenche la cration du projet. Le projet apparait dans la vue Navigateur.

Si le workspace contient dj plusieurs projets, il est possible d'associer un ou plusieurs de ceux ci avec le nouveau en cours de cration. Pour raliser cette association, il suffit de cliquer sur Next pour afficher le second volet de l'assistant. Il suffit de cocher les projets concerns.

Dveloppons en Java avec Eclipse

13

Il est possible de crer des projets particuliers selon le type d'applications dvelopper.

3.1.2. La cration d'un rpertoire


L'assistant de cration de rpertoire permet de crer un rpertoire dans un projet. Par dfaut, c'est le projet courant qui est slectionn.

Il suffit ensuite de saisir le nom sans espace ni caractre non alphabtique et de cliquer sur "Fin". Le nouveau rpertoire apparat dans la vue Navigateur.

3.1.3. La cration d'un fichier


L'assistant de cration de fichiers permet de choisir le projet et le rpertoire dans lequel le fichier sera cr. Une fois cette localisation choisie il suffit de saisir le nom du fichier, son extension et de cliquer sur "Fin". Ce nom ne doit pas contenir de blanc ou des caractres non alphabtiques.

Dveloppons en Java avec Eclipse

14

Si un diteur est associ au type du nouveau fichier, l'diteur est affich sur le nouveau fichier.

3.2. La duplication d'un lment


Dans la vue Navigateur, pour dupliquer un lment, le plus simple est de faire un cliquer/glisser de l'lment en maintenant la touche CTRL enfonce vers son rpertoire de destination dans le navigateur. Il est aussi possible de slectionner l'lment dans la vue Navigateur et d' effectuer une des oprations suivantes : appuyer sur CTRL + C slectionner l'option "Copier" du menu contextuel Il suffit alors de slectionner dans la vue Navigateur le rpertoire de destination et d'effectuer une des oprations suivantes : appuyer sur CTRL + V slectionner l'option "Coller" du menu contextuel

Dveloppons en Java avec Eclipse

15

3.3. Le dplacement d'un lment


Dans la vue Navigateur, pour dplacer un lment, le plus simple est de faire un cliquer/glisser de l'lment vers son rpertoire de destination dans le navigateur. Il est aussi possible de slectionner l'option "Dplacer" du menu contextuel associ cet lment et de slectionner le rpertoire de destination dans la bote de dialogue.

Si le rpertoire de destination slectionn est identique au rpertoire d'origine du fichier, une message est affich.

3.4. Renommer un lment


Pour nommer un lment, il suffit de slectionner l'lment dans la vue Navigateur, de slectionner l'option "Renommer" du menu contextuel, saisir le nouveau nom et appuyer sur "entre". Dveloppons en Java avec Eclipse 16

3.5. La suppression d'un lment


Pour supprimer un lment, il suffit de le slectionner dans la vue Navigateur et d'effectuer une des actions suivantes : choisir l'option "Supprimer" du menu contextuel de l'lment appuyer sur la touche Suppr choisir l'option "Supprimer" du menu "Editer" Une bote de dialogue demande de confirmer la suppression.

3.6. Importation
Attention, l'importation ne peut se faire que dans un projet existant. Il faut utiliser le menu "Fichier/Importer"

Slectionner le type de la source d'importation et cliquer sur "Suivant" Dveloppons en Java avec Eclipse 17

Slectionner le rpertoire, puis cocher chacun des lments concerns. Il est trs important de vrifier et de modifier si ncessaire le rpertoire de destination qui doit tre l'un des projets du workspace. En cliquant sur "Filtrer les types ", une bote de dialogue permet de slectionner les fichiers concerns partir de leurs extensions.

Il suffit de slectionner les extensions parmi celles proposes et saisir d'autres extensions et cliquer sur "OK". Le filtre est alors directement appliqu sur la slection. Une fois la slection termine, il suffit de cliquer sur "Fin" pour lancer l'importation. Au cas ou une ressource existerait dj dans la destination, un message demande la confirmation du remplacement.

Dveloppons en Java avec Eclipse

18

3.7. Exportation
Pour exporter tout ou partie du workspace, il faut utiliser le menu "Fichier/Exporter".

L'assistant demande de slectionner le format d'exportation. Si le format choisi est "Systme de fichiers", l'assistant demande les informations ncessaires : les fichiers exporter, le rpertoire de destination

Dveloppons en Java avec Eclipse

19

Attention : pour que la structure des rpertoires soient conserves dans la cible, il faut obligatoirement que les rpertoires soient slectionns. Si le format choisi est "Javadoc", l'assistant demande les informations ncessaires : les fichiers exporter, le rpertoire de destination

Les deux pages suivantes permettent de prciser des options pour l'outil javadoc. Un clic sur "Fin" permet de gnrer la documentation. Si le format choisi est "Fichier Zip", l'assistant demande les informations ncessaires : les fichiers exporter, le fichier zip gnrer.

Un clic sur "Fin" permet de crer le fichier zip contenant tous les lments slectionns. Si le format est "Fichier Jar", l'assistant demande les informations ncessaires : le ou les projets exporter, le fichier jar crer. Dveloppons en Java avec Eclipse 20

Un clic sur "Suivant" affiche une nouvelle page de l'assistant pour prciser certaines options.

Un clic sur "Suivant" affiche une nouvelle page de l'assistant pour prciser le fichier manifest.

Dveloppons en Java avec Eclipse

21

Dveloppons en Java avec Eclipse

22

4. Le workbench

Au lancement d'Eclipse, une seule fentre s'ouvre contenant le "workbench". Le "workbench" est compos de perspectives dont plusieurs peuvent tre ouvertes mais une seule est affiche en mme temps. A l'ouverture, c'est la perspective "Ressource" qui est affiche.

Une perspective contient des sous fentres qui peuvent contenir des vues (views) et des diteurs (editors) La partie gauche du workbench est compose d'une barre qui contient une icne pour chaque perspective ouverte et une icne pour ouvrir une nouvelle perspective. L'icne enfonce est celle de la perspective affiche. Le titre de la fentre du workbench contient le nom de la perspective courante. Eclipse possde dans le workbench une barre de menu et une barre de tches. Elles sont toutes les deux dynamiques en fonction du type de la sous fentre active de la perspective courante. Eclipse propose de nombreux assistants pour faciliter la ralisation de certaines taches : cration d'entits

Dveloppons en Java avec Eclipse

23

4.1. Les perspectives


Une perspective prsente une partie du projet de dveloppement selon un certain angle de vue. Chaque perspective possde une icne qui permet de l'identifier plus rapidement. Eclipse version 1.00 possde plusieurs perspectives : Perspective Debug Help Java Java Type Hierarchy Plugin Development Resource Scripts Team Gestion du travail collaboratif Icne Rle Dbugueur Aide en ligne Ecriture de code Java Navigation des la hirarchie et les lments des classes Cration de plugin Gestion du contenu du workspace

Eclipse version 2.00 possde les perspectives suivantes : Perspective Debug Java Java Browsing Java Type Hierarchy Plugin Development Resource Install/update CVS Cration de plugin Gestion du contenu du workspace Installation et mise jour de plug in via le web Gestion du travail collaboratif avec CVS Icne Rle Dbugueur Ecriture de code Java Navigation des la hirarchie et les lments des classes

Pour ouvrir une nouvelle perspective, il y a deux manires de procder : Cliquer sur l'icne dans la barre des perspectives Utiliser l'option "Ouvrir" du menu "Perspective" (Eclipse 1.0) ou l'option "Ouvrir la perspective" du menu "Fenttre" (eclipse 2.0) Lors d'un clic sur l'icne , un menu flottant s'ouvre pour permettre la slection de la perspective ouvrir. Si elle n'appartient pas la liste, elle est accessible en cliquant sur l'option Autre .

Dveloppons en Java avec Eclipse

24

Eclipse 2.0 Un clic sur l'option Autre ouvre une boite de dialogue dans laquelle il est possible de slectionner la nouvelle perspective afficher.

Eclipse 1.0

Eclipse 1.0

Eclipse 2.0

La perspective par dfaut (celle qui est affiche l'ouverture de l'application) est indique. Il est possible d'ouvrir plusieurs perspectives d'un mme type en mme temps. Cependant une seule perspective, quelque soit son type est affiche un moment donn. Toutes les perspectives ouvertes possdent une icne dans la barre des perspectives. Pour en afficher une, il suffit de cliquer sur son icne. La perspective courante est celle dont l'icne est enfonce.

4.2. Les vues et les diteurs


Une perspective est compose de sous fentres qui peuvent tre de deux types : les vues les diteurs Une vue permet de visualiser et de slectionner des lments. Il ne peut y avoir qu'une seule vue particulire dans une mme perspective. Plusieurs vues diffrentes peuvent tre rassembles dans une mme sous fentre. L'accs chaque vue se fait grce un onglet. Un diteur permet de visualiser mais aussi de modifier le contenu d'un lment. Un diteur peut contenir plusieurs lments, chacun tant identifi par un onglet

Dveloppons en Java avec Eclipse

25

Dans une perspective, il ne peut y avoir qu'une seule sous fentre active contenant soit un diteur soit une vue. La barre de titre de cette sous fentre est colore. Pour activer une sous fentre, il suffit de cliquer dessus. Avec Eclipse 1.0 sous Windows, les vues peuvent tre extraites du workbench pour devenir des fentres indpendantes. Pour cela, il faut cliquer sur la barre de titre de la vue, en maintenant le bouton de la souris enfonc, effectuer un glissement avec la souris vers une zone non empilable (sur un diteur, les bords de l'cran ) et de relacher le bouton de la souris (le curseur de la souris prend la forme d'une petite fentre aux endroits adquats).

Pour raliser l'opration inverse, il faut faire glisser la fentre au dessus d'une vue existante : elles seront alors empiles.

4.2.1. Les diteurs


Il existe plusieurs diteurs en fonction du type de l'lment qui est dit. L'onglet de l'diteur contient le libell de l'lment trait. Une petite toile apparat droite de ce libell si l'lment a t modifi sans tre sauvegard.

Pour fermer l'diteur contenant l'lment en cours, il suffit de cliquer sur l'icne de l'onglet. Une confirmation sera demande en cas de fermeture alors que l'lment a t modifi sans sauvegarde. Il est aussi possible d'utiliser l'option "Fermer" et "Fermer tout" du menu "Fichier" du workbench pour fermer le fichier en cours ou tous les fichiers. Dveloppons en Java avec Eclipse 26

Si l'lment dit ne possde pas d'diteur ddi dans Eclipse, il tente d'ouvrir un outil associ au type de la ressource dans le systme d'exploitation.

4.2.2. les vues


Les vues permettent de prsenter et de naviguer dans les ressources. Plusieurs vues peuvent tre runies dans une mme sous fentre : dans ce cas, le passage d'une vue l'autre se fait via un clic sur l'onglet concern.

Les vues possdent deux menus : un menu associ la sous fentre activable en cliquant sur la petite icne en haut gauche. Les options de ce menu concerne la sous fentre elle mme.

le second menu est activable en cliquant sur l'icne en forme de triangle dont la base est en haut options de ce menu concerne le contenu de la vue notamment le tri ou le filtre.

. Les

4.3. Organiser les composants de la perspective


Chaque perspective possde une organisation par dfaut de ses sous fentres. Pour revenir cette organisation par dfaut, il faut utiliser l'option "Reset" du menu "Perspective" avec Eclipse 1.0 ou l'option "Rinitialiser la perspective" du menu "Fentre" dans Eclipse 2.0. Dveloppons en Java avec Eclipse 27

Avec Eclipse 1.0, l'option "Show View" du menu "Perspective" permet de visualiser une vue particulire qu'il suffit de slectionner dans le sous menu.

Avec Eclipse 2.0, l'opration quivalente est effectue en slectionnant l'option "Afficher la vue" du menu "Fentre".

4.4. Fermer le workbench


Pour fermer le workbench et donc quitter Eclipse il y a deux possibilits : Fermer la fentre du workbench Slectionner l'option "Quitter" du menu "Fichier" Si des ressources doivent tre sauvegardes, une bote de dialogue apparat contenant ces ressources. Il faut indiquer celles qui doivent tre enregistres.

Dveloppons en Java avec Eclipse

28

A sa fermeture, Eclipse enregistre certaines donnes dans le workspace.

Dveloppons en Java avec Eclipse

29

5. Les fonctions pratiques du workbench

Eclipse fournit dans le workbench plusieurs outils trs pratiques qui permettent : d'effectuer des recherches de grer une liste de tches faire de grer une liste de signets d'lments de comparer des lments

5.1. La fonction de recherche


Cette fonction de recherche permet d'obtenir une liste d'lments qui contiennent une chaine dsigne par un motif. Elle peut se faire dans tous les fichiers, dans les fichiers source Java ou dans l'aide en ligne.

5.1.1. La recherche dans les fichiers


Pour effectuer une recherche, il faut cliquer sur l'cone dialogue permet de saisir les critres de recherche. de la barre d'outils du workbench. Une bote de

L'onglet "Recherche d'un fichier" permet de faire une recherche de fichiers contenant un texte respectant un motif. Ce motif peut tre saisi ou slectionn dans la liste droulante partir des prcdents motifs recherchs. Dveloppons en Java avec Eclipse 30

Il est possible de saisir les caractres recherchs et d'utiliser trois caractres dont la signification est particulire : * : reprsente zro ou plusieurs caractres quelconques ? : reprsente un caractre quelconque \ : permet de dspcialiser le caractre *, ? et \ Il est possible de vouloir tenir compte de la casse en cochant la case "Respect maj/min". Il est aussi possible de restreindre la recherche certains fichiers en prcisant un motif particulier. Un clic sur bouton "Parcourir" ouvre une boite de dialogue qui permet de slectionner un ou plusieurs types prdfinis.

Pour lancer la recherche, il suffit de cliquer sur "Rechercher".

Une barre de progression indique l'volution de la recherche et le nombre de fois ou le motif est trouv. Un clic sur "Annuler" permet d'interrompre la recherche.

Dveloppons en Java avec Eclipse

31

5.1.2. L'exploitation des rsultats de recherche


Une fois la recherche termine, la vue "Recherche" affiche les lments contenant le motif et le nombre de fois ou le motif a t trouv dans chaque lment.

Le bouton permet de passer l'occurence suivante quelque soit l'lment qui la contienne. Lors du changement de l'lment qui contient l'occurence, celui ci est ouvert dans l'diteur. Il est possible de supprimer une ou plusieurs occurences dans la vue "Recherche". Le menu contextuel propose plusieurs options en fonction de la situation actuelle : "Supprimer l'occurence slectionne" : cette option permet de supprimer l'occurence courante de l'lment en cours "Supprimer les occurences en cours" : permet de supprimer toute les occurences de l'lment et l'lement de la liste "Supprimer toutes les occurences" : permet de supprimer tous les lments La vue "Recherche" affiche le rsultat de la recherche courante mais elle mmorise aussi les prcdentes recherches. Pour afficher les rsultats des prcdentes recherches, il suffit de slectioner la recherche en utilisant le bouton . Un menu affiche la liste des prcdents motifs de recherche et le nombre d'occurences trouves. La recherche courante est coche.

Il est toujours possible de ritrer la recherche en utilisant l'option "Nouvelle recherche" du menu contextuel de la vue.

5.2. La liste des tches


La vue "Tches" affiche et permet de grer une liste de tches faire. Ces tches peuvent tre de plusieurs types : des actions raliser des erreurs de compilation des points d'arrt pour le debuggage Ces tches peuvent tre ou non associes un lment du workspace. Par exemple, une erreur de compilation est associe un fichier source. Dveloppons en Java avec Eclipse 32

Lorsqu'une tche est associe un lement, le nom de cet lment apparait dans la colonne ressource et sa localisation dans le workspace dans la colonne "Dans le dossier".

Il est possible d'accder l'lment associ la tche en double cliquant sur la tche ou en slectionnant l'option "Accder " du menu contextuel de la tche. L'lment est ouvert dans l'diteur avec le curseur positionn sur la ligne associe la tche.

5.2.1. La cration d'une tche


Pour crer une tche qui ne soit pas associe un lment, il suffit de cliquer sur le bouton Une bote de dialogue permet de saisir la description et la priorit de la nouvelle tche. de la vue.

Un clic sur le bouton "OK" cr la nouvelle tche.

5.2.2. La cration d'une tche associe un lment


La cration d'une tche associe un lement ne se fait pas dans la vue "Tches" mais directement dans un diteur qui contient l'lment. La tche est associe une ligne de l'lment. Dans la barre gauche de l'diteur, le menu contextuel contient l'option "Ajouter une tche ..."

Dveloppons en Java avec Eclipse

33

Une boite de dialogue demande de saisir la description de la tche et de slectionner la priorit.

Un clic sur "OK" cre la tche et une marque particulire apparait sur la ligne concerne dans la barre de gauche de l'diteur.

Cette marque reste associe la ligne mme si la position de la ligne dans le fichier change (par ajout ou suppression de lignes).

5.2.3. La suppression d'une tache associe un lment


Il suffit de slectionner l'option "Supprimer une tche" du menu contextuel associ la marque de la tche. La marque disparait et la tche est supprime de la liste.

5.3. La liste des signets


Les signets (bookmarks) permettent de maintenir une liste d'lments particuliers dans le but d'y accder rapidement. Pour afficher la vue "Signets", il faut slectionner l'option "Afficher la vue / Signets" du menu "Fentre" du workbench.

Dveloppons en Java avec Eclipse

34

A partir de la vue "Signets", pour ouvrir un lment dans l'diteur, il y a trois possibilits : double cliquer sur le signet slectionner l'option "Accder " du menu contextuel associ au signet cliquer sur le bouton une fois le signet slectionn Il est aussi possible partir d'un signet de slectionner l'lment dans la vue "Navigateur" en utilisant l'option "Afficher dans le navigateur" du menu contextuel.

5.3.1. La cration d'un signet


Un signet peut concerner un lment (un fichier) ou plus prcisement une composante de cet lment (une position particulire dans le fichier). Pour crer un signet sur un lement, il suffit de le slectionner dans la vue "Navigateur" et de slectionner l'option "Ajouter un signet" du menu contextuel. Pour crer un signet sur une ligne de l'lment, il suffit de positionner le curseur sur la ligne dsire dans l'diteur et de slectionner l'option "Ajouter un signet" du menu contextuel de la barre de gauche de l'diteur.

Une boite de dialogue demande de saisir la description.

Le signet est ajout dans la liste des signets et une marque est affiche dans la barre de gauche de l'diteur sur la ligne concerne.

Dveloppons en Java avec Eclipse

35

5.3.2. La suppression d'un signet


Pour supprimer un signet, il y a trois possibilits : 1. dans la vue "Signets", slectionner le signet et cliquer sur le bouton 2. dans la vue "Signets", slectionner le signet et l'option "Supprimer" du menu contextuel associ au signet 3. dans l'diteur, slectionner l'option "Supprimer un signet" du menu contextuel associ l'icne du signet dans la barre de gauche

5.4. La comparaison d'lments


Le workbench dispose d'un outil pratique pour comparer le contenu de deux lments. Pour raliser cette comparaison, il faut slectionner ces deux lments en maintenant la touche Ctrl enfonce dans la vue "Navigateur" et slectionner l'option "Comparer / Rciproquement" du menu contextuel. Si les deux fichiers sont identiques, une bote de dialogue s'affiche :

Si les deux fichiers possdent des diffrences, un diteur particulier s'ouvre. Cet diteur spcial pour les comparaisons, affiche chaque ligne des deux fichiers dans deux colonnes. Une colonne centrale permet de voir de faon graphique les diffrences grce des lignes.

Dans la barre centrale, les lignes en gris fonc sont identiques, les lignes en blanc sont des diffrences entre les deux fichiers.

La vue de comparaison de fichier contient une barre d'outils qui permet de naviguer dans les diffrences et de les reporter pour effectuer une synchronisation slective.

Dveloppons en Java avec Eclipse

36

La flche vers le haut et le bas permet de naviguer dans les diffrences respectivement la suivante et la prcdente. Les quatre premiers boutons permettent respectivement : copier tout le document de gauche dans le document de droite copier tout le document de droite dans le document de gauche reporter la diffrence courante de gauche dans le document de droite reporter la diffrence courante de droite dans le document de gauche

Dveloppons en Java avec Eclipse

37

6. Le Java Development Tooling (JDT)

Le JDT est inclus dans Eclipse pour fournir des outils de dveloppement en Java. Il inclus plusieurs plugins et apporte : les perspectives "Java" et "Navigation Java" les vues "Packages" et "Hierarchie" les diteurs "Java" et "Scrapbook" les assistants : pour crer de nouveaux projets, packages, classes, interfaces, ... Dans le workspace, il dfinit un projet de type particulier pour les projets Java. L'arborescence de ces projets contient un fichier particulier nomm .classpath qui contient la localisation des bibliothques utiles la compilation et l'excution du code.

6.1. Les projets de type Java


Pour pouvoir dvelopper des entits en Java, il faut les regrouper dans un projet de type Java.

6.1.1. La cration d'un nouveau projet Java


Dans la perspective "Java", il y a plusieurs possibilits pour lancer l'assistant de cration d'un nouveau projet : slectionner l'option "Projet" du menu "Fichier/Nouveau" slectionner l'option "Nouveau/Projet" du menu contextuel de la vue "Packages" L'assistant demande le type de projet crer.

Dveloppons en Java avec Eclipse

38

Pour demander directement la cration d'un projet "Java", il suffit de cliquer sur l'cone d'outils. L'assistant demande le nom du projet.

de la barre

Ce nom de projet ne doit pas dj tre utilis dans le workspace courant sinon un message d'erreur est affich.

En cliquant sur "Fin", le projet est cr avec des paramtres par dfaut. Pour modifier certains paramtres avant la cration du projet, suffit de cliquer sur le bouton "Suivant" :

La modification de ces paramtres sera dtaille dans la section suivante. Une fois les paramtres modifies, cliquer sur "Fin".

Dveloppons en Java avec Eclipse

39

Le projet apparait dans la vue "Packages".

6.1.2. Les paramtres d'un projet Java


Les principaux paramtres d'un projet peuvent tre modifis : lors de l'utilisation de l'assistant la cration du projet en slectionnant le menu contextuel "Proprits" sur le projet slectionn dans la vue "Packages" et de choisir "Chemin de compilation Java"

Les proprits "chemin de compilation Java" sont regroupes dans quatres onglets : Onglet Source Projets Bibliothques Ordre et exportation Rle Permet de prciser le rpertoire qui va contenir les sources Permet d'utiliser d'autre projet avec le projet courant Permet d'ajouter des bibliothques au projet Permet de prciser l'ordre des ressources dans la classpath

L'onglet "Source" permet de prciser le rpertoire qui va contenir les sources : par dfaut, c'est le rpertoire du projet lui mme (l'option "utiliser le dossier projet en tant que dossier source" est slectionn). Pour stocker les ressources dans un rpertoire ddi, il faut slectionner l'option "Utiliser les dossiers sources contenus dans le projet". La liste permet de slectionner le ou les rpertoires. Le bouton "Crer un dossier" ouvre une bote de dialogue qui demande le nom du rpertoire.

Dveloppons en Java avec Eclipse

40

Il suffit de saisir le nom, par exemple "sources" et cliquer sur "OK" Par dfaut, ds qu'un premier rpertoire contenant les sources est slectionn, Eclipse propose de crer un rpertoire bin qui va contenir le rsultat des diffrentes compilations.

La rponse la question est libre mais il est prfrable de rpondre "Oui". L'onglet "Projets" permet d'ajouter des projets contenus dans le workspace au classpath.

Il suffit de cocher les projets inclure dans le classpath. L'onglet "Bibliothques" permet d'ajouter des bibliothques externes au projet notamment des fichiers .jar.

Les bibliothques incluses dans le classpath du projet courant sont affiches dans la liste. Pour ajouter sur une nouvelle bibliothque contenue dans le workspace, il suffit de cliquer sur "Ajouter des fichiers jar". Pour ajouter des fichiers jar qui ne sont pas contenus dans le workspace, il suffit de cliquer sur "Ajouter des fichiers jar externes".

Dveloppons en Java avec Eclipse

41

Une boite de dialogue permet de slectionner le fichier jar. En cliquant sur "Ouvrir", le fichier jar est ajout dans la liste. Le bouton "Avances" permet d'ajouter d'autres entits au classpath notamment des rpertoires qui contiennent des fichiers compils.

Le bouton "Editer" permet de modifier les caractristiques de la bibliothque (son chemin d'accs dans le cas d'un fichier jar). Le bouton "Supprimer" permet de supprimer une bibliothque du classpath. L'onglet "Ordre et exportation" permet de modifier l'ordre des bibliothques dans le classpath, de prciser la cible des lments gnrs (le rpertoire qui va les contenirs) et de dfinir les ressources qui seront utilisables par les autres projets du workspace lorsque le projet sera li avec eux.

6.2. La cration d'entit


Dans un projet Java, il est possible de crer diffrentes entits qui entrent dans sa composition : les packages les classes les interfaces

Dveloppons en Java avec Eclipse

42

6.2.1. Les packages


Il est possible de crer les packages l'avance mme si ceux ci peuvent tre crer automatiquement en mme temps qu'une classe qui la contient. Pour crer un nouveau package, il y a plusieurs possibilits : cliquer sur la flche de l'icne de la barre d'outils de la perspective java et slectionner "Package" cliquer sur l'icne de la barre d'outils de la perspective Java slectionner l'option "Package" du menu "Fichier / Nouveau" L'assistant demande le nom du package.

Cliquer sur "Fin", pour crer le nouveau package. Le package apparait dans la vue "Packages".

6.2.2. Les classes


La cration d'une classe peut se faire : en cliquant sur l'cne dans la barre d'outils en slectionnant l'option Classe du menu " Fichier/Nouveau " Un assistant facilite la cration de la classe.

Dveloppons en Java avec Eclipse

43

L'assistant demande de renseigner les diffrentes caractristiques de la nouvelle classe : le projet et le package d'appartenance, le nom, les modificateurs, la classe mre, les interfaces implmentes. Enfin, il est possible de demander l'assistant de gnrer certaines mthodes. Si un projet ou un package est slectionn dans la vue package, celui ci est automatiquement repris par l'assistant. L'ajout d'une interface implmente se fait en la slectionnant dans une liste.

Pour ajouter une interface, il suffit de double cliquer dessus ou de la slectionner et d'appuyer sur le bouton "Ajouter". Une fois toutes les interfaces ajoutes, il suffit de cliquer sur le bouton "Ok". Toutes les mthodes dfinies dans la ou les interfaces slectionnes seront prsentes dans le code source de la classe gnre. Si le package saisi n'existe pas dans le projet, celui ci sera cr en mme temps que la classe. Dveloppons en Java avec Eclipse 44

Une fois toutes les donnes utiles renseignes, il suffit de cliquer sur " Fin " pour que la classe soit gnre et que l'diteur s'ouvre avec le contenu de son code source.

6.2.3. Les interfaces


La cration d'une interface peut se faire : en cliquant sur l'icne dans la barre d'outils en slectionnant l'option Interface du menu " Fichier/Nouveau " Un assistant facilite la cration de l'interface.

L'assistant demande de renseigner les diffrentes caractristiques de la nouvelle interface : le projet et le package d'appartenance, le nom, les modificateurs. Une fois toutes les donnes utiles renseignes, il suffit de cliquer sur " Fin " pour que l'interface soit gnre et que l'diteur s'ouvre avec le contenu de son code source.

6.3. Les vues du JDT


Le JDT contient les vues "Packages" et "Hirarchie"

6.3.1. La vue "Packages"


Cette vue permet d'afficher de faon arborescente le contenu des diffrents packages dfinis et utiliss dans chaque projet.

Dveloppons en Java avec Eclipse

45

Pour les lments contenant du code source, l'arborescence sous jacente permet de voir les diffrents membres qui composent l'lment. Un double clic sur des lments de l'arborescence, permet d'ouvrir l'diteur directement sur l'lment slectionn.

Chaque lment de l'arborescence possde une petite icne en fonction en son type : Icne Type de l'lment Projet de type Java Package Elment Java : classe ou interface Interface Java Classe public Java Classe Java pouvant tre excute (possdant une mthode main()) Classe protected Classe package friendly Classe private Champ public Champ private Champ protected Champ package friendly Mthode public Mthode private Mthode protected Mthode package friendly Le bouton Le bouton Le bouton permet de masquer les champs dfinis dans les lments java. permet de masquer les membres statiques. permet de masquer tous les membres qui ne sont pas publics.

Dveloppons en Java avec Eclipse

46

Il est possible de restreindre les entits affiches dans la vue package. Il suffit de cliquer sur bouton slectionner l'option " Filtres ".

et de

Il suffit de cocher les filtres qui doivent tre appliqus. A partir de l'diteur, il est possible de slectionner dans la vue "Package", l'lment en cours d'dition en utilisant l'option "Afficher dans la vue package" du menu contextuel.

6.3.2. La vue "Hirarchie"


Cette vue affiche la hirarchie d'un lment. Pour afficher la hirarchie d'un lment, il y a plusieurs possibilits : dans la vue Package slectionner l'lment et d'utiliser l'option "Ouvrir la hirarchie des types" du menu contextuel. dans l'diteur, utiliser le menu contextuel "Ouvrir la hirarchie des types" Elle se compose de deux parties : une partie suprieure qui affiche la hirarchie de l'lment. une partie infrieure qui affiche la liste de membres de l'lment

Dveloppons en Java avec Eclipse

47

Le bouton

permet de slectionner dans un historique un lment qui a dj t affich dans la vue.

Il suffit de slectionner l'lment concern et de cliquer sur "OK". Le bouton permet d'afficher la hirarchie des classes mres et des interfaces qu'elles implmentent de l'lment courant.

Le bouton menu permet de changer la prsentation de la vue : Le bouton Le bouton Le bouton : les deux parties sont affiches horizontalement : les deux parties sont affiches verticalement : n'affiche que la partie qui prsente la hirarchie permet de masquer les champs permet de masquer les membres statiques. permet de masquer tous les membres qui ne sont pas publics.

Dveloppons en Java avec Eclipse

48

6.4. L'diteur de code


Le JDT propose un diteur ddi au fichier contenant du code java. Il propose des fonctionnalits particulirement pratiques pour le dveloppement de code Java notamment : la coloration syntaxique la compltion de code le formatage du code source l'importation et l'exportation de code via un assistant une forte synergie avec le debogueur Pour ouvrir un lment dans l'diteur, il y a deux faons principales : double cliquer sur un lment dans la vue "Navigateur" double cliquer sur un lment dans la vue "Packages" L'diteur peut tre invoqu sur un fichier .java ou un fichier .class. Dans le cas d'un fichier .class, si le fichier source est disponible dans l'IDE, alors l'diteur affiche le contenu du code source.

6.4.1. Utilisation de l'diteur de code

La ligne ou se situe le curseur apparat en gris.

De chaque ct de la zone d'dition, il y a une colonne qui peut contenir de petites icnes pour fournir des informations l'utilisateur. Par exemple, si l'on fait hriter une classe d'une classe dont le package n'est pas import, un clic sur la petite ampoule jaune permet d'obtenir des propositions de corrections.

Il suffit de slectionner une des actions proposes dans la liste pour que celle ci soit automatiquement mise en oeuvre. Un aperu des modifications impliques par l'action slectionne est affich dans une bulle d'aide.

Le bouton

de la barre d'outils permet, s'il est slectionn, d'afficher une bulle d'aide contenant des 49

Dveloppons en Java avec Eclipse

informations sur l'lment sous lequel est le curseur.

Une description plus dtaille peut tre obtenue en positionnant le curseur sur l'lment et en appuyant sur la touche F2 ou en slectionnant l'option " Afficher une description de type infobulles " du menu " Editer ".

6.4.2. Compltion de code


La compltion de code permet de demander l'IDE de proposer des suggestions pour terminer le morceau de code en cours d'criture. Dans l'diteur Eclipse, pour l'activer, il suffit d'appuyer sur les touches Ctrl et espace en mme temps.

Cette fonction peut tre appele alors qu'aucune ou une partie du code complter est saisie.

La compltion de code s'adapte au contexte dans lequel elle est appele. Par exemple, elle peut tre appele pour complter une clause d'importation. Dans ce cas, elle propose une liste de packages en tenant compte du code dj saisi.

Dveloppons en Java avec Eclipse

50

L'diteur peut gnrer la structure d'un commentaire javadoc dans le source. Par exemple, avant une mthode, il suffit de saisir /** puis d'appuyer sur la touche " Entre ".

L'appel de la compltion de code en appuyant sur les touches " Ctrl " + " Espace " permet aussi de faciliter la saisie des commentaires de type java.

6.4.3. Affichage des paramtres sous la forme d'une bulle d'aide


Il est quasiment impossible de retenir les arguments ncessaires toutes les mthodes de toutes les classes utilises. L'diteur d'Eclipse propose d'afficher sous la forme d'une bulle d'aide, les paramtres avec leur type pour la mthode en cours de rdaction dans le code. Pour utiliser cette fonction, il suffit d'appuyer sur les touches "Ctrl" + "Maj" + "Espace" en mme temps dans l'diteur pendant la saisie d'un ou des paramtres d'une mthode.

Dveloppons en Java avec Eclipse

51

Si la mthode est surcharge, alors Eclipse demande de choisir la mthode utiliser pour ainsi dterminer avec prcision les paramtres afficher dans la bulle d'aide.

6.4.4. L'diteur et la vue Structure


Il existe un lien entre l'diteur et la vue "Structure". Si cette vue est visible dans la perspective, ds que le curseur se dplace sur un membre de la classe en cours d'dition, le membre concern est automatiquement slectionn dans la vue "Structure".

Les lignes concernant le membre slectionn sont marqus par une partie grise dans la colonne de gauche de l'diteur. Les modifications apportes dans le code source (ajout, modification ou suppression de membres) sont automatiquement rpercutes dans la vue "Structure". Le bouton de la barre d'outils permet de limiter l'affichage dans l'diteur du membre slectionn dans la vue "Structure".

Pour rafficher le source complet, il suffit de cliquer de nouveau sur le bouton.

6.4.5. La coloration syntaxique


L'diteur possde une fonction de coloration syntaxique. Par dfaut, les lments sont colors de la faon suivante : les mots cls mots du langage sont colors en violet gras les chanes de caractres sont en bleu les commentaires sont en vert les commentaires Javadoc sont en bleu plus clair les balises Javadoc sont en gris les autres lments sont en noir Exemple :

Dveloppons en Java avec Eclipse

52

Il est possible de modifier ces couleurs par dfaut dans les prfrences (menu Fentres/Prfrence) Il faut slectionner l'lment Java/Editeur dans l'arborescence. Cet lment possde quatre onglets. L'onglet syntaxe permet de modifier les couleurs.

Il suffit de slectionner l'lment concern dans la liste droulante et de slectionner la couleur qui lui est associe en cliquant sur le bouton couleur. Une bote de dialogue permet de slectionner la nouvelle couleur utiliser.

Dveloppons en Java avec Eclipse

53

6.4.6. Utilisation des modles


Il suffit de saisir le nom du modle et d'appuyer sur les touches "Ctrl" et "Espace" en mme temps Exemple : avec le modle if

Il suffit de slectionner le modle insrer pour qu'il soit immdiatement insrer dans le code. Il est possible d'ajouter, de modifier ou de supprimer un modle en utilisant les prfrences (menu Fentre/Prfrences). Il suffit de slectionner dans l'arborescence "Java/Modles"

Dveloppons en Java avec Eclipse

54

Pour modifier un modle, il suffit de cliquer sur "Editer"

6.4.7. La gestion des importations


Il est possible de faire insrer la clause import pour un lment utilis dans le code. Pour cela, il suffit de mettre le curseur sur l'lment concern et de slectionner l'option " Source/Ajout d'une instruction d'import " ou d'appuyer sur les touche "Ctrl" + "Maj" + "M". Si l'lment est dclar dans un package unique, la clause import est automatiquement gnre. Sinon une bote de dialogue demande de slectionner l'lment pour lequel la clause import sera gnre.

Dveloppons en Java avec Eclipse

55

La fonctionnalit "Organisation des importations" est trs pratique car elle permet d'insrer automatiquement les clauses imports avec les package requis par le code. Par exemple : une variable de type Socket est dclare, sans que le package java.net ne soit import

Pour ajouter automatiquement la clause d'importation, il suffit d'utiliser l'option "Source/Organiser les importations" du menu contextuel.

La clause import est insre dans le code. Si un lment est contenu dans plusieurs packages, une bote de dialogue demande la slection du type importer.

Cette fonctionnalit supprime aussi automatiquement les importations qui sont inutiles car aucune classe incluse dans ces packages n'est utilise dans le code. Certains rglages de cette fonctionnalit peuvent tre effectus dans les prfrences (menu "Fentre/Prfrences"). Il suffit de slectionner " Java/Organisation des importations " dans l'arborescence.

Dveloppons en Java avec Eclipse

56

6.4.8. La gnration de getter et setter


Il suffit d'utiliser l'option "Source/Gnrer les mthodes getter et setter" du menu contextuel. Une bote de dialogue permet de slectionner, pour chaque attribut de la classe en cours d'dition, les getters et setters gnrer

Il suffit de slectionner les mthodes ncessaires pour qu'une gnration par dfaut soit effectue dans le code.

6.4.9. Formater le code


L'diteur peut formater le code selon des rgles dfinies. Pour utiliser cette fonctionnalit, il suffit d'utiliser l'option " Formater " du menu contextuel. Les rgles utilises pour formater sont dfinies dans les prfrences (menu "Fentre/Prfrences"). Il faut slectionner dans l'arborescence, "Java/Module de formatage de code". Les rgles de formatage peuvent tre dfinies grce trois onglets. Dveloppons en Java avec Eclipse 57

6.4.10. Mise en commentaire d'une portion de code


L'diteur permet de mettre en commentaire une portion de code. Il suffit de slectionner la portion de code concerne.

Puis, il faut utiliser l'option " Source / Mettre en commentaires " du menu contextuel de l'diteur.

Pour supprimer les commentaires sur une portion de code, il suffit de slectionner la portion de code et d'utiliser l'option " Source / Supprimer la mise en commentaire " du menu contextuel.

Dveloppons en Java avec Eclipse

58

6.4.11. Protger une portion de code avec un bloc try/catch


L'diteur propose une option qui permet automatiquement de rechercher, dans un bloc de code slectionn, une ou plusieurs exceptions pouvant tre leves et de protger le bloc de code avec une instruction de type try / catch. Il faut slectionner le bloc de code protger.

Puis utiliser l'option " Source / Entourer d'un bloc try / catch ". L'diteur analyse le code et gnre la cause try / catch qui va capturer toutes les exceptions qui peuvent tre leves dans le bloc de code slectionn.

Chacune des instructions catch est marque avec une tache " bloc catch autognr " pour indiquer au dveloppeur d'ajouter le code ncessaire au traitement de l'exception. Si le bloc de code ne contient aucun appel de mthode susceptible de lever une exception, une bote de dialogue demande si l'instruction catch doit capturer une exception de type RuntimeException.

Dveloppons en Java avec Eclipse

59

6.4.12. Les erreurs


Lors de la sauvegarde du fichier, celui ci est compil et les erreurs trouves sont signales grce plusieurs indicateurs dans diffrentes vues.

Les erreurs sont signales par une cone ronde rouge contenant une croix blanche dans les vues suivantes : dans l'diteur, la ou les lignes contenant une ou plusieurs erreurs sont marques avec cette icne dans la vue "Tches", une entre pour chaque erreur est cre pour faciliter leur recencement et leur accs dans la vue "Packages", tous les lments allant du fichier source au projet, sont marqus de la petite icne Dans l'diteur, le simple fait de laisser le pointeur de la souris sur la petite icne permet d'afficher une bulle d'aide qui prcise l'erreur.

Les boutons prcdente.

et

permettent respectivement de se positionner sur l'erreur suivante et sur l'erreur

6.5. Excution d'une application


Dans la vue Java, il est possible d'excuter une application de plusieurs faons. Pour excuter l'application en cours d'dition, il suffit de cliquer sur la flche du bouton d'outils. de la barre

Dveloppons en Java avec Eclipse

60

Ce menu droulant propose diffrentes options : relancer les prcdentes excutions listes dans la premire partie du menu l'option "Excuter en tant que" permet de lancer l'application dans trois modes diffrents (Application java, Test JUnit et plan de travail d'excution) l'option "Excuter" ouvre une bote de dialogue pour paramtrer prcisment les options d'excution L'option "Excuter en tant que / Application Java" lance la mthode main() d'une application. L'option "Excuter" ouvre une bote de dialogue qui permet de saisir tous les paramtres d'xcution.

La boite de dialogue se compose de six onglets. L'onglet "Main" permet de slectionner le projet et la classe de ce projet qui contient la mthode main() excuter. L'onglet "Arguments" permet de prciser les arguments passs l'application et la machine virtuelle. L'onglet "JRE" permet de slectionner le JRE utiliser lors de l'excution. L'onglet "Chemin d'accs aux classes" permet de modifier la liste et l'ordre des bibliothques utilises lors de l'excution. Cet onglet permet de modifier la liste dfinie dans le projet qui est celle utilise par dfaut. L'onglet "Commun" permet de prciser le type de lancement et le mode d'excution et de dbogage. Une fois tous les paramtres voulus renseigns, il suffit de cliquer sur le bouton " Excuter " pour lancer l'application.

Dveloppons en Java avec Eclipse

61

La vue " Console " permet de voir les donnes qui sont envoyes dans le flux standard de sortie et d'erreurs.

Les messages ayant pour origine une exception sont aussi envoys dans cette vue.

6.6. Gnration de la documentation javadoc


Pour demander la gnration de la documentation javadoc, il faut utiliser le menu "Projet/Gnrer/Le javadoc". Pour utiliser cet option, il faut obligatoirement que les prfrences concernant javadoc soit renseignes, sinon un message d'erreur empche l'utilisation de l'assistant

Pour rsoudre le problme, il faut aller dans l'arborescence java/javadoc des prfrences, cliquer sur le bouton "Parcourir" et slectionner le fichier javadoc.exe du JDK utiliser.

Dveloppons en Java avec Eclipse

62

Cliquer sur "OK" pour valider les modifications. La gnration de la documentation au format javadoc se fait avec un assistant. Il faut lui indiquer : le ou les projets concerns, la visibilit des membres inclure, le doclet utiliser et le rpertoire de destination.

Cliquer sur "Suivant" La page suivante de l'assistant permet de prciser des options pour l'outil javadoc.

Dveloppons en Java avec Eclipse

63

Une fois les options configures, cliquer sur "Suivant" La page suivante de l'assistant permet de prciser d'autres options.

En cliquant sur "Fin", la gnration de la documentation est effectue. L'assistant demande si l'emplacement javadoc du projet doit tre mis jour.

Dveloppons en Java avec Eclipse

64

Il est conseill de rpondre "Oui" pour permettre d'avoir accs cette documentation partir de l'diteur en appuyant sur les touches "Shift" + "F2". Le dtails de la gnration est affich dans le vue "Console".

6.7. Dfinition du JRE utiliser


Eclipse est capable de travailler avec plusieurs JRE. Dans l'arborescence " Java/JRE install " des prfrences, il est possible de dfinir plusieurs JRE installs sur la machine.

Un clic sur le bouton "Editer" permet de modifier les donnes du JRE dfini dans Eclipse.

6.8. Utilisation de l'historique local


L'historique local est une fonctionnalit propose par Eclipse pour conserver un certain nombre de version du code pour chaque lment contenu dans le workspace. Pour pouvoir utiliser l'historique local, il faut placer le curseur sur un lment de code sinon un message d'erreur est affich :

Dveloppons en Java avec Eclipse

65

L'option "Historique local" du menu contextuel propose 4 options : " Comparer ... "

Cette option permet de comparer la version contenue dans l'diteur avec celles contenues dans l'historique. Il n'est pas possible de reporter les modifications avec cette option. " Remplacer par l'lment prcdent " Cette option permet de remplacer la version de l'diteur par la dernire contenue dans l'historique : elle correspond la dernire sauvegarde. " Remplacer par ... "

Il suffit de slectionner la version dsire et de cliquer sur " Remplacer ". " Restaurer partir de ... " Cette option permet de restaurer des lments contenus dans l'historique mais qui ne sont plus prsents dans l'diteur de code.

Dveloppons en Java avec Eclipse

66

Il suffit de cocher le ou les lments et de slectionner la version de l'historique restaurer et de cliquer sur le bouton "Restaurer".

6.9. Externaliser les chanes


Eclipse possde une fonction permettant d'automatiser l'externalisation des chanes de caractres dans un fichier de ressource afin de faciliter l'internationalisation de la classe traite. L'exemple de cette section utilise le code source suivant :

Dans la vue " Package ", il faut slectionner le fichier source puis utiliser l'option " Source / Externaliser les chanes " du menu contextuel. Eclipse analyse le code source la cherche de chanes de caractres et affiche l'assistant " Externalisation des chanes ".

Dveloppons en Java avec Eclipse

67

La premire page de l'assistant permet de slectionner les chanes de caractres traiter dtectes par Eclipse. Pour chaque chane, il est possible de changer le nom de la cl associe la chane de caractres et de prciser si la chane doit tre traite ou non. Pour modifier la cl, il est possible de cliquer sur la cl et de saisir le nouveau nom ou de slectionner la ligne de la chane et de cliquer sur le bouton " Editer la cl "

Pour indiquer si la chane doit tre traite, il est possible de cliquer plusieurs fois sur la case cocher de la ligne correspondante pour obtenir le symbole correspondant la valeur voulue ou de cliquer sur le bouton " Convertir ", " Jamais convertir " ou " Ignorer " aprs avoir slectionn la ligne dsire. Un clic sur le bouton " Suivant " permet de prciser des informations sur le fichier de ressource qui sera gnr.

Dveloppons en Java avec Eclipse

68

Un clic sur " Suivant " affiche une liste des problmes dtects.

Un clic sur " Suivant " permet d'afficher une page qui prvisualise les modifications qui vont tre apportes.

Dveloppons en Java avec Eclipse

69

Il est possible de slectionner tout ou partie des modifications en les cochant. Un clic sur le bouton " Fin " met en oeuvre les modifications.

6.10. Ouverture d'un type


Le bouton de la barre d'outils permet de lancer l'outils " Ouverture d'un type ". Cette outils est particulirement pratique pour rechercher et ouvrir dans l'diteur le code d'une classe dont on connat tout ou partie du nom.

Il suffit de saisir le dbut du nom de la classe ou de l'interface pour que la liste des entits rpondant au critre se construise de faon incrmentale.

Dveloppons en Java avec Eclipse

70

Il est aussi possible de saisir un motif l'aide des caractres ? pour reprsenter un caractre quelconque unique et * pour reprsenter aucun ou plusieurs caractres quelconques. La zone qualificatif affiche le ou les packages ou l'entit est dfinie. Ce nom de package est suivi du nom du projet si l'entit est dfinie dans le workspace ou du nom fichier qui contient la version compile pour une entit externe. Une fois l'lment voulu slectionn, un clic sur " OK " ouvre l'diteur avec cette entit.

6.11. Utilisation du scrapbook


Le scrapbook, traduit par " page de testeur de code ", est une fonctionnalit qui permet de tester des morceaux de code dans une machine virtuelle. Cette fonctionnalit trs intressante tait dj prsente dans l'outils Visual Age d'IBM. Pour pouvoir l'utiliser, il faut crer une nouvelle "page de testeur de code", en utilisant une des possibilits d'Eclipse pour crer une nouvelle entit. Comme pour la cration de toute nouvelle entit, un assistant permet de recueillir les informations ncessaires la cration du scrapbook.

Une "page de testeur de code" est physiquement un fichier contenant du code java et ayant une extension .jpage La seule page de l'assistant permet de slectionner le rpertoire qui va contenir le fichier ainsi que son nom. Par dfaut, l'extension .jpage est ajoute. Un clic sur "Fin" permet de gnrer le fichier et d'ouvrir l'diteur avec son contenu. Le grand avantage est de pouvoir tester des morceaux de code sans avoir crer une classe et une mthode main() et de bnficier de fonctionnalits particulires pour tester ce code.

Dveloppons en Java avec Eclipse

71

Exemple :

Lors de l'dition du code contenu dans le scrapbook, la barre d'outils est enrichie de plusieurs boutons qui permettent d'utiliser les principales fonctionnalits du scrapbook. Bouton Rle Permet d'excuter un morceau de code et d'valuer le rsultat de l'excution Permet d'afficher dans l'diteur de code, le rsultat de l'excution d'un morceau de code Permet d'excuter un morceau de code et d'afficher le rsultat dans la console Permet d'arrter l'excution dans la machine virtuelle Permet de dfinir les importations Les trois premiers boutons ne sont utilisables que si un morceau de code est slectionn dans le scrapbook. Le quatrime bouton n'est utilisable que si une machine virtuelle excute du code du scrapbook. La fonction " Inspecter " permet de visualiser, dans la vue " Expressions ", les valeurs des objets contenus dans le code slectionn. Pour la mettre en oeuvre, il suffit de slectionner un morceau de code dans l'diteur du scrapbook et de cliquer sur le bouton ou d'utiliser l'option " Inspecter " du menu contextuel.

La fonction " Affichage du rsultat de l'excution " permet d'excuter un morceau de code et d'afficher le rsultat de l'excution dans l'diteur juste aprs la fin de la slection du morceau de code. Pour mettre en oeuvre cette fonctionnalit, il faut slectionner un morceaux de code dans l'diteur du scrapbook.

Dveloppons en Java avec Eclipse

72

Il faut ensuite cliquer sur le bouton

ou d'utiliser l'option " Afficher " du menu contextuel.

L'affichage insre le type entre parenthse et la valeur du rsultat dans l'diteur. La fonction " Excuter " permet d'excuter d'un morceau de code et d'afficher le rsultat dans la vue " Console ". Pour mettre en oeuvre cette fonctionnalit, il faut slectionner un morceau de code dans l'diteur du scrapbook.

Il faut ensuite cliquer sur le bouton

ou utiliser l'option " Excuter " du menu contextuel.

Lors de l'excution de code dans le scrapbook, une machine virtuelle ddie est lance pour cette excution. Pour pouvoir relancer une excution, il faut arrter le machine virtuelle prcdemment lance. L'arrt de cette machine virtuelle peut se faire en cliquant sur le bouton . Lors de l'excution de code dans le scrapbook, si une erreur de syntaxe est dtecte, celle ci est signale directement dans le code de l'diteur Exemple :

Dveloppons en Java avec Eclipse

73

Lors de l'excution de ce morceau de code, l'erreur suivante est affiche dans l'diteur

La structure d'un fichier java classique n'tant pas respecter dans le scrapbook, la gestion des clauses d'import est gre de faon particulire. Exemple :

L'excution de ce morceau de code gnre l'erreur suivante :

Pour ajouter une clause import, il cliquer sur le bouton menu contextuel.

ou utiliser l'option " Dfinit les importations " du

Dveloppons en Java avec Eclipse

74

Un clic sur le bouton " Ajouter un type " permet d'importer une classe ou une interface dans le scrapbook. .

La zone de saisie du type permet une recherche incrmentale dans toutes les entits dfinies dans le chemin de compilation du projet. Un clic sur le bouton " Ajouter un Package " permet d'importer un package

La zone de saisie du package permet une recherche incrmentale du package dsir parmi tous ceux dfinis dans le chemin de compilation du projet. Enfin pour supprimer l'importation d'une entit, il suffit de la slectionner et de cliquer sur le bouton " Supprimer ". L'assistant de code, est bien sre disponible dans l'diteur du scrapbook toujours en utilisant la combinaison de touches "Ctrl" + "Espace".

Dveloppons en Java avec Eclipse

75

Dveloppons en Java avec Eclipse

76

7. Deboguer du code Java

7.1. La perspective "debug"


Pour dboguer du code Java, Eclipse propose une perspective ddie : la perspective "dbogage". Celle ci est automatiquement affiche lorsqu'une application est lance sous le contrle du dbogueur en utilisant le bouton de la barre d'outils. Son principe de fonctionnement est identique au bouton d'excution situ juste ct de lui.

Par dfaut, la perspective "dbogage" affiche quelques vues aussi prsentes dans la perspective Java (les vues "Structure" et "Console") ainsi que l'diteur de code Java. Elle affiche aussi plusieurs vues particulirement ddies au dbogage.

7.2. Les vues spcifiques au dbogage


Les vues spcifiques au dbogage sont : la vue "Dbogage" : affiche sous la forme d'une arborescence, les diffrents processus en cours d'excution ou termins la vue "Variables" : affiche les variables utilises dans les traitements en cours de dbogage la vue "Points d'arrts" : affiche la liste des points d'arrts dfinis dans l'espace de travail la vue "Expressions" : permet d'inspecter une expression en fonction du contexte des donnes en cours d'excution Dveloppons en Java avec Eclipse 77

la vue "Affichage" : permet d'afficher le rsultat de l'valuation d'une expression

7.2.1. La vue "Dbogage"


Cette vue affiche sous la forme d'une arborescence, les diffrents processus en cours d'excution ou termins.

Cette vue possde plusieurs icnes qui permettent d'agir sur les lments affichs. Icne Rle Reprendre l'excution prcdemment interrompue Interrompre l'excution du processus Permet de mettre fin au processus

Enlve de la liste tous les processus qui sont termins

Execute la ligne courante et arrte l'excution sur la premire ligne de code incluse dans la premire mthode de la ligne courante (raccourci : F5) Exccute la ligne courante et arrte l'excution avant la ligne suivante (raccourci : F6) Excute le code de la ligne courante jusqu' la prochaine instruction return de la mthode (raccourci : F7) Affiche ou non le nom pleinement qualifis des objets

L'excution d'un processus est automatiquement suspendu dans les cas suivants : un point d'arrt est rencontr une exception non capture est propage jusqu'au sommet de la pile d'appel

7.2.2. La vue "Variables"


Cette vue permet de visualiser les valeurs des variables utilises dans les traitements en cours de dbogage. Ces valeurs peuvent tre unique si la variable est de type primitive ou formes une arborescense contenant chacun des champs si la variable est un objet. Dveloppons en Java avec Eclipse 78

7.2.3. La vue "Points d'arrts"


Cette vue permet de recenser tous les points d'arrts dfinis dans l'espace de travail.

Un double clic sur un des points d'arrts permet d'ouvrir l'diteur de code directement sur la ligne ou le point d'arrt est dfini. Cette action est identique l'utilisation de l'option "Accder au fichier" du menu contextuel ou un clic sur le bouton de la barre de titre. Il est possible grce au menu contextuel de contrler les points d'arrts. L'option "Nombres d'occurences" permet de prciser le nombre fois ou le points d'arrts excuts sera ignors avant qu'il n'intrrompe l'excution. Ceci est particulirement pratique lorsqu'on dbogue du code contenu dans une boucle et que l'on connait l'itration qui pose problme. Lors du clic sur l'option "Nombres d'occurences", une bote de dialogue permet de prciser le nombre de passage sur le point d'arrt ignorer.

Ce nombre est indiqu dans la vue "Points d'arrts", prcd du libell "nombre d'accs".

Dveloppons en Java avec Eclipse

79

Il est possible d'activer ou de dsactiver le point d'arrt slectionn respectivement grace l'option "Activer" ou "Dsactiver". L'option "Supprimer" permet de supprimer le point d'arrt slectionn. Il est aussi possible d'utiliser le bouton de la barre de titre de la vue. L'option "Supprimer tout" permet de supprimer tous les points d'arrts dfinis. Il est aussi possible d'utiliser le bouton de la barre de titre de la vue. L'option "Proprits ..." permet d'ouvrir une bote de dialogue pour rgler les diffrents paramtres du point d'arrt slectionn.

Un de ces paramtres les plus intressants est la possibilit de mettre une condition d'activation du point d'arrt. Il suffit pour cela de cocher la case "Activer la condition" et de la saisir dans la zone de texte prvu cet effet. Dans cette zone de texte, l'assistant de compltion de code est utilisable.

Dans cette vue, il est aussi possible de demander l'arrt de l'excution non pas l'excution d'une ligne de code mais la lever d'une exception particulire. Pour cela, il suffit de cliquer sur le bouton . Dveloppons en Java avec Eclipse 80

Une bote de dialogue permet de slectionner l'exception concerne.

Le nouveau point d'arrt est affich dans la vue "Point d'arrts".

Il est possible de prciser si l'arrt se fait sur une exception intercepte, non intercept ou dans les deux cas. Ce type de point d'arrt possde les mmes proprits que les points d'arrts lis une ligne de code.

7.2.4. La vue "Expressions"


La vue "Expressions" permet d'inspecter la valeur d'une expression selon les valeurs des variables dans les traitements en cours de debogage.

Pour ajouter une nouvelle expression, il suffit d'utiliser l'option du menu contextuel. Une boite de dialogue permet de saisir l'expression.

"Ajouter une expression de contrle Java"

Dveloppons en Java avec Eclipse

81

La vue "Expressions" affiche le rsultat de l'valuation en tenant compte du contexte d'excution.

L'option "Rvaluer l'expression de contrle" permet de recalculer la valeur de l'expression. L'option "Editer l'expression de contrle" permet de modifier l'expression.

7.2.5. La vue "Affichage"


La vue "Affichage" permet d'afficher le rsultat de l'valuation d'une expression. La valeur de l'expression afficher peut avoir plusieurs origines. Le plus pratique est de slectionner un morceau de code dans l'diteur et d'utiliser l'option "Afficher" du menu contextuel. Le rsultat de l'valuation est affich dans la vue "Affichage".

Il est aussi possible d'ajouter directement une expression dans la vue en utilisant l'option "Assistant de contenu" du menu contextuel.

Dveloppons en Java avec Eclipse

82

Il faut slectionner le membre ou la variable concern. Pour obtenir des informations sur sa valeur, il suffit de slectionner l'expression dans la vue. Diverses actions sont alors disponibles avec les boutons dans la barre de titre de la vue ou dans les options du menu contextuel : inspecter : excution et valuation dans la vue "Expressions" afficher : afficher le rsultat dans la vue vue "Affichage" excuter : executer l'expression slectionne. Il est ainsi possible de modifier la valeur d'une variable

7.3. Mise en oeuvre du dbogueur


La mise en oeuvre du dbogueur reste comparable celle propos par d'autres IDE : mise en place d'un point arrts, excution plus ou moins rapide dans le dbogueur pour arriver cibler le problme.

7.3.1. Mettre en place un point d'art


Pour placer un point d'arrt, il suffit dans l'diteur de double cliquer dans la barre de gauche pour faire apparatre une icne ronde bleue.

7.3.2. Excution dans le dbogueur


Pour lancer l'excution dans le dbogueur, il faut ouvrir le menu en cliquant sur flche du bouton Un menu droulant propose de dboguer les dernires applications excutes ou de lancer le dbogage de la source courante en proposant deux options de menu :

Dveloppons en Java avec Eclipse

83

Le plus simple pour lancer le dbogage d'une application est de slectionner l'option Dboguer en tant que / Application Java L'option "Dboguer ... " permet de fournir des paramtres prcis en vue de l'excution d'une application sous le dbogueur. Un assistant permet de slectionner la classe et de prciser les paramtres.

Il ne reste plus qu' mettre en oeuvre les diffrentes fonctionnalits proposes par les vues de la perpective pour dboguer le code.

Dveloppons en Java avec Eclipse

84

8. Le refactoring

Eclipse intgre de puissantes fonctionnalits pour faciliter le refactoring. Le refactoring consiste modifier la structure d'un fichier source et si ncessaire propager ces modifications dans les autres fichiers sources pour maintenir autant que possible l'intgrit du code. Un menu nomm Propager les modifications permet d'utiliser certaines de ces fonctionnalits : il est prsent dans le menu principal et dans de nombreux menus contextuels. Avant de pouvoir utiliser ces fonctionnalits, il faut sauvegarder l'lment qui sera modifi sinon un message d'erreur est affich.

L'usage de ces fonctions utilise toujours le mme principe de fonctionnement : 1. slection de l'lment concern par la fonction de refactoring 2. appel de la fonction en utilisant l'option du menu Propager les modifications 3. renseigner les informations utiles la fonction dans la bote de dialogue 4. prvisualiser et valider individuellement les modifications qui seront apportes 5. demander la mise en oeuvre des modifications en cliquant sur Ok (ceci peut tre fait sans demander la prvisualisation) Le bouton Apercu > permet d'ouvrir une bote de dialogue qui permet de prvisualiser chacune des modifications rsultant de l'usage de la fonction.

Dveloppons en Java avec Eclipse

85

Une arborescence permet d'afficher chacun des lments qui sera modifi ainsi que toutes les modifications pour ces lments. Il est possible de cocher tout ou partie des modifications pour qu'elles soient appliques. La partie infrieure prsente, pour l'lment slectionn, le code source actuel gauche et le code source tel qu'il sera aprs l'application de la fonction droite. Un clic sur le bouton OK permet de mettre en oeuvre toutes les modifications qui sont coches.

8.1. Extraction d'une mthode


Cette fonction permet de transferer un morceau de code dans une mthode qui sera cre pour l'occasion. Pour l'utiliser, il faut slectionner le morceau de code.

Il faut slectionner l'option Extraire la mthode du menu principal ou du menu contextuel Propager les modifications . Une boite de dialogue permet de saisir le nom de la mthode et de slectionner le modificateur d'accs.

Dveloppons en Java avec Eclipse

86

Un clic sur OK permet de mettre en oeuvre automatiquement les modifications.

Dans le cas ou le code slectionn contient une ou plusieurs variables, la bote de dialogue contient en plus la liste des variables dtectes dans le code.

Dveloppons en Java avec Eclipse

87

Il faut saisir le nom de la mthode et slectionner son modificateur d'accs. La liste des variables dtectes dans le code est affiche dans la liste des paramtres. Pour modifier le nom d'un des paramtres, il suffit de le slectionner et de cliquer sur le bouton Editer .

Le bouton Aperu permet de voir et de valider les modifications qui seront apportes.

Dveloppons en Java avec Eclipse

88

8.2. Intgrer
L'intgration permet de remplacer l'appel d'une mthode par le code contenu dans cette mthode.

Puis il faut utiliser l'option Propager les modifications/Intgrer du menu principal ou contextuel.

Dveloppons en Java avec Eclipse

89

En fonction du contexte d'appel, une bote de dialogue permet de slectionner la porte des modifications. Si le code slectionn ne correspond pas une mthode, un message d'erreur est affich.

8.3. Renommer
La fonction renommer permet d'attribuer un nouveau nom une entit prsente dans le workspace. Les exemples de cette section utilisent les deux classes suivantes :

Dveloppons en Java avec Eclipse

90

Le renommage concerne l'entit slectionne dans une vue ou sous le curseur dans l'diteur. Par exemple, pour renommer une mthode, il suffit de positioner le curseur sur le nom de la dclaration d'une mthode dans le code source et slectionner l'option Propager les modifications / Renommer du menu contextuel.

Il suffit alors de saisir le nouveau nom. Eclipse permet de renommer la mthode dans sa classe de dfinition mais remplace aussi tous les appels de la mthode contenue dans le workspace.

Pour renommer une classe, il y a deux possibilits : selectionner la classe dans la vue Packages ou positionner le curseur sur la dfinition du nom de la classe dans l'diteur. Puis il faut utiliser l'option Renommer du menu contextuel Propager les modifications .

Dveloppons en Java avec Eclipse

91

Il est possible de prciser les types d'entits qui doivent tre mise jour. A la validation, Eclipse effectue toutes les modifications ncessaires suite au renommage de la classe, notamment le remplacement tous les endroits dans le workspace ou la classe est utilise.

Le principe est le mme pour renommer un package.

Dveloppons en Java avec Eclipse

92

Si Eclipse dtecte des problmes potenciels lors de l'analyse de la demande, il affiche dans une boite de dialogue la liste de ces problmes et demande un confirmation avant de poursuivre les traitements.

Si la slection ne correspond aucun lment renommable, un message d'erreur est affich.

8.4. Dplacer

Dveloppons en Java avec Eclipse

93

Cette section sera dveloppe dans une version future de ce document Si le code slectionn ne correspond pas une entit concerne par cet action, un message d'erreur est affich.

8.5. Changer la signature de la mthode

Cette section sera dveloppe dans une version future de ce document

Si le code slectionn ne correspond pas une entit concerne par cet action, un message d'erreur est affich.

8.6. Convertir une classe anonyme en classe imbrique

Cette section sera dveloppe dans une version future de ce document

Dveloppons en Java avec Eclipse

94

Si le code slectionn ne correspond pas une entit concerne par cet action, un message d'erreur est affich.

8.7. Convertir un type imbriqu au niveau suprieur

Cette section sera dveloppe dans une version future de ce document

Si le code slectionn ne correspond pas une entit concerne par cet action, un message d'erreur est affich.

8.8. Extraire

Cette section sera dveloppe dans une version future de ce document

8.9. Transferer

Dveloppons en Java avec Eclipse

95

Cette section sera dveloppe dans une version future de ce document

8.10. Extraire une interface


Cette fonction permet de dfinir postriori une interface partir d'une ou plusieurs mthodes dfinies dans une classe. Il faut slectionner dans le code le nom d'une classe.

Si la partie slectionne ne correspond pas un nom de classe, un message d'erreur est affich.

Il suffit ensuite d'utiliser l'option Extraire une interface du menu Propager les modifications . Une boite de dialogue permet de prciser le nom de l'interface et de slectionner les membres dclarer dans l'interface.

Dveloppons en Java avec Eclipse

96

Le rsultat est la cration de l'interface et son implmentation par la classe slectionne.

Pour respecter les spcifications du langage Java, les membres qu'il est possible d'intgrer dans l'interface sont des mthodes et des constantes publiques.

8.11. Utiliser le supertype si possible

Cette section sera dveloppe dans une version future de ce document

Dveloppons en Java avec Eclipse

97

8.12. Convertir la variable locale en zone


La fonction convertir la variable locale en zone permet de transformer une variable locale une mthode en un champ de la classe. Pour utiliser cette fonction, il faut slectionner dans le code une variable locale.

Puis utiliser l'option Convertir la variable locale en zone du menu Propager les modifications . Si la slection ne correspond pas une variable locale, un message d'erreur est affich.

Une bote de dialogue permet de prciser le nom du champ, le modificateur d'accs et l'endroit dans le code ou le champ sera initialis.

Le rsultat de l'excution de la fonction est le suivant : Dveloppons en Java avec Eclipse 98

8.13. Encapsuler la zone


Cette fonction permet d'encapsuler un attribut en gnrer un getter et ventuellement un setter. Il faut slectionner dans le code un champ de la classe.

Il faut ensuite utiliser l'option Encapsuler la zone du menu Propager les modifications . Si la slection dans le code ne correspond pas un champ de la classe, un message d'erreur est affich.

Une boite de dialogue permet de prciser les options pour la gnration du getter et du setter

Dveloppons en Java avec Eclipse

99

Le rsultat de l'excution gnre le getter et le setter et remplace l'utilisation du champ par ces mthodes.

En slectionnant l'option conserver les rfrences de zones , ces mthodes ne sont pas utilises dans la classe.

8.14. Extraire la variable locale


Cette fonction permet de dfinir une constante partir d'une expression. Il faut slectionner une expression dans le code source.

Dveloppons en Java avec Eclipse

100

Puis utiliser l'option Extraire la variable locale du menu Propager les modifications .

Une bote de dialogue permet de saisir le nom de la variable, de prciser si toutes les occurrences doivent tre modifies et si la variable doit tre une constante. Si la slection dans le code source est incorecte, un message d'erreur est affich.

Le rsultat de l'excution de cette fonction est le suivant :

8.15. Extraire une constante


Cette fonction permet de dfinir une constante partir d'une valeur en dur utilise dans le code. Il suffit de slectionner cette valeur dans le code source.

Dveloppons en Java avec Eclipse

101

Puis d'utiliser l'option Extraire une constante du menu Propager les modifications . Une boite de dialogue apparat pour prciser le nom de la constante crer et son modificateur d'accs.

Il est possible de prciser si toutes les occurrences de la valeur doivent tre remplaces dans le code source. Il est aussi possible de prciser l'utilisation de la qualification de la constante avec le nom de la classe dans laquelle elle est dfinie.

Dveloppons en Java avec Eclipse

102

9. L'aide dans Eclipse

9.1. L'aide en ligne


L'aide en ligne est disponible dans toute l'interface de l'IDE au moyen de la touche F1. Cette aide est contextuelle en fonction de l'lment slectionn dans l'interface au moment de l'appui sur la touche. Le choix des sujets se rapportant l'lment courant est affich dans une info bulle. Il suffit de cliquer sur l'lment slectionn pour que l'aide en ligne correspondante s'affiche. Exemple avec l'appui sur F1 dans l'diteur de code Java

9.2. L'aide Javadoc


Si la configuration de l'IDE est correcte, il est possible d'accder directement la page javadoc d'un lment java en plaant le curseur sur cet lment et en appuyant sur F2. Si l'accs la documentation javadoc pour l'lment n'est pas configur un message d'erreur s'affiche.

Dveloppons en Java avec Eclipse

103

Pour configurer l'IDE, il faut slectionner la ressource qui contient l'lment dans la vue "Packages" : un projet un fichier .jar Exemple : associer la doc du JDK avec le fichier rt.jar Il faut slectionner le fichier rt.jar du projet dans la vue "Packages" et slectionner le menu contextuel "Proprits". Il faut slectionner "Emplacement Javadoc" puis cliquer sur parcourir pour slectionner le rpertoire qui contient le fichier packagelist de la documentation.

Enfin, il faut cliquer sur "OK" pour valider les changements. Si le chemin n'est pas correct, un message d'erreur est affich.

Il est alors possible dans l'diteur de code Java de positionner le curseur sur un lment contenu dans un des emplacements Javadoc pour que l'aide en ligne affiche la page concerne par l'lment dans la documentation javadoc. Ce processus est applicable toutes les API dont la documentation Javadoc est disponible.

9.3. Le plug in Java docs de Crionics


La socit Crionics propose un plug in qui s'intgre dans l'aide en ligne de Eclipse et qui contient la documentation du JDK 1.3 et de quelques API open source. Dveloppons en Java avec Eclipse 104

Ce plug in cre une entre nomme "Essentials Java Docs" dans la table des matire de l'aide en ligne. Cette documentation regroupe les API essentielles.

Ce plug in est tlchargeable sur le site de Crionics (environ 30 Mo): http://www.crionics.com/products/opensource/eclipse/com.crionics.java.doc.zip Pour l'installer, il suffit de dzipper son contenu dans le rpertoire plug in d'intallation d'Eclipse.

Dveloppons en Java avec Eclipse

105

10. Ant et Eclipse

Ant est un projet du groupe ApacheJakarta. Son but est de fournir un outil crit en java pour permettre la construction d'applications (compilation, excution de taches post et pr compilation ... ). Ces processus de construction d'applications sont trs importants car ils permettent d'automatiser des oprations rptitives tout au long du cycle de vie de l'application (dveloppement, tests, recettes, mises en production ... ). Le site officiel de ant est http://jakarta.apache.org/ant/index.html. Ant pourrait tre compar au clbre outil make sous Unix. Il a t dvelopp pour fournir un outil de construction indpendant de toute plateforme car crit avec et pour java. Il repose sur un fichier de configuration XML qui dcrit les diffrentes tches qui devront tre excutes par l'outil. Ant fournit un certain nombre de tches courantes qui sont codes sous forme d'objets dvelopps en java. Le fichier de configuration contient un ensemble de cible (target). Chaque cible contient une ou plusieurs tches. Chaque cible peut avoir une dpendance envers une ou plusieurs autres cibles pour pouvoir tre excute. Pour obtenir plus de dtails sur l'utilisation de Ant, il est possible de consulter la documentation de la version courante l'url suivante : http://jakarta.apache.org/ant/manual/index.html

10.1. Structure du projet


Pour utiliser Ant, il faut organiser diffremment la structure du projet si celuici utilise la structure par dfaut d'un projet Java. Par dfaut, les fichiers sources .java et leurs homologues compils .class sont dans le mme rpertoire la racine du projet. Il faut mettre les sources dans un rpertoire et les fichiers .class dans un autre. Ce changement peut tre fait dans l'onglet "Source" des proprits du projet.

Dveloppons en Java avec Eclipse

106

Cliquer sur le bouton "Add Folder". +

Cliquer sur le bouton "Create New Folder". Il faut saisir le nom du rpertoire qui va contenir les sources (par exemple src) et cliquer sur "OK".

Cliquer sur "OK".

En cliquant sur "Yes", Eclipse va automatiquement crer un rpertoire bin qui va contenir le rsultat des compilations des sources.

Dveloppons en Java avec Eclipse

107

Cliquer sur "OK".

Cliquer sur "Yes". Il faut ensuite dplacer les fichiers .java existant dans le rpertoire src en effectuant un copier/coller dans la vue "Navigateur". Il faut ensuite crer un rpertoire build contenant deux sous dossiers : lib et doc. Ces dossiers vont contenir respectivement les fichiers de distribution gnrs (.jar, .war, .ear selon le type d'application) et la documentation des classes au format javadoc.

10.2. Cration du fichier build.xml


Les ordres de gnrations sont fournis Ant sous la forme d'un fichier au format xml nomm build.xml. Il faut crer ce nouveau fichier la racine du projet.

Le fichier est automatiquement reconnu comme tant un fichier de configuration pour Ant : une icne particulire contenant une fourmi est associe au fichier. Il suffit ensuite d'diter le fichier pour insrer les paramtres d'excution.

Dveloppons en Java avec Eclipse

108

Exemple : afficher un message


<?xml version="1.0"?> <project name="TestAnt1" default="bonjour"> <target name="bonjour"> <echo message="Premier test avec Ant!"/> </target> </project>

Un diteur particulier est ddi l'dition du fichier build.xml de Ant. Il propose notamment un achvement du code pour les tags en utilisant Ctrl + espace.

La vue structure affiche l'arborescence du fichier.

Une fois le contneu du fichier saisi, il suffit de l'enregistrer.

10.3. Excuter Ant


Pour excuter Ant avec un fichier build.xml, il suffit dans la vue "Navigateur" ou "Packages" de slectionner ce fichier build.xml et d'utiliser l'option "Excuter Ant" du menu contextuel. Une boite de dialogue s'ouvre. Elle permet de modifier quelques paramtres externes Ant et de lancer l'excution.

Dveloppons en Java avec Eclipse

109

Par dfaut, la tche dfinie par dfaut dans le fichier build.xml est slectionne. Pour lancer l'excution, il suffit de cliquer sur le bouton "Excuter". Le rsultat de l'excution s'affiche dans la vue "Console" Exemple :
Buildfile: I:\eclipse 2.1\workspace\test_junit\build.xml bonjour: [echo] Premier test avec Ant! BUILD SUCCESSFUL Total time: 401 milliseconds

10.4. Les paramtres


Dans les prfrences, il est possible de prciser des paramtres par dfaut utiliss lors de l'dition d'un fichier ant ou de son excution.

Dveloppons en Java avec Eclipse

110

10.5. Rsolution des problmes


Plusieurs problmes peuvent survenir lors de l'utilisation de Ant. Voici une solution pour quelques uns d'entre eux.

10.5.1. Utilisation de caractres accentus

Il faut ajouter l'attribut encoding avec le jeux de caractres utiliss dans le prologue du fichier build.xml. Exemple :
<?xml version="1.0" encoding="ISO88591" ?>

10.5.2. Impossible de lancer la tache javadoc

Exemple :
Buildfile: I:\eclipse 2.1\workspace\test_junit\build.xml

Dveloppons en Java avec Eclipse

111

init: [echo] Generation numero : 7 du July 2 2003 compil: doc: [javadoc] Generating Javadoc [javadoc] Javadoc execution [javadoc] BUILD FAILED: file:I:/eclipse 2.1/workspace/test_junit/build.xml:37: Javadoc failed: java.io.IOException: CreateProcess: javadoc.exe d "I:\eclipse 2.1\workspace\test_junit\build\doc" use package classpath "I:\eclipse 2.1\s tartup.jar;I:\eclipse 2.1\workspace\test_junit\junit.jar" version author "I:\eclipse 2.1\workspace\test_junit\src\MaClasse.java" "I:\eclipse 2.1\workspace\test_junit\src\MaClasse2.java" error=2 Total time: 681 milliseconds

Il faut vrifier la prsence de l'outil dans les rpertoires dsigns par la variable d'environnement PATH du systme d'exploitation. Dans le cas de javadoc sous Windows, il faut s'assurer que %JAVA_HOME%\bin soit insrer dans la variable PATH. Si cette dernire doit tre modifie, il faut arrter et relancer Eclipse aprs la modification pour que celle ci soit prise en compte.

10.5.3. Impossible d'utiliser la tche JUnit


Exemple :
Buildfile: I:\eclipse 2.1\workspace\test_junit\build.xml init: [echo] Generation numero : 13 du July 2 2003 compil: test: [junit] BUILD FAILED: file:I:/eclipse 2.1/workspace/test_junit/build.xml:62: Could not create task or type of type: junit. Ant could not find the task or a class this task relies upon.

Dans les prfrences, il faut rajouter le fichier junit.jar dans l'onglet "Classpath" de l'arborescence "Ant/Runtime"

10.6. Un exemple complet


Exemple :
<?xml version="1.0" encoding="ISO88591" ?> <project name="TestAnt1" default="all"> <description> Gnration de l'application

Dveloppons en Java avec Eclipse

112

</description> <property <property <property <property <property <property name="bin" location="bin"/> name="src" location="src"/> name="build" location="build"/> name="doc" location="${build}/doc"/> name="lib" location="${build}/lib"/> name="junit_path" value="junit.jar"/>

<target name="init" description="Initialisation"> <tstamp/> <buildnumber file="numerobuild.txt" /> <echo message="Generation numero : ${build.number} du ${TODAY}"/> </target> <target name="compil" depends="init" description="Compilation"> <javac srcdir="${src}" destdir="${bin}"> <classpath> <pathelement path="${java.class.path}"/> <pathelement location="${junit_path}"/> </classpath> </javac> </target> <target name="all" depends="init, compil, test, doc" description="Generation complete"> <echo message="Generation complete."/> </target> <target name="doc" depends="compil" description="Generation de la documentation"> <javadoc destdir="${doc}" author="true" version="true" use="true" package="true"> <fileset dir = "${src}"> <include name="**/*.java"/> <exclude name="**/*Test*"/> </fileset> <classpath> <pathelement path="${java.class.path}"/> <pathelement location="${junit_path}"/> </classpath> </javadoc> </target> <target name="test" depends="compil" description="Executer les tests avec JUnit"> <junit fork="yes" haltonerror="true" printsummary="on"> <formatter type="plain" usefile="false" /> <test name="ExecuterLesTests"/> <classpath> <pathelement location="${bin}"/> <pathelement location="${junit_path}"/> </classpath> </junit> </target> </project>

Rsultat de l'excution :
Buildfile: I:\eclipse 2.1\workspace\test_junit\build.xml init: [echo] Generation numero : 16 du July 2 2003 compil: test: [junit] Running ExecuterLesTests [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0,02 sec [junit] Testsuite: ExecuterLesTests [junit] Tests run: 3, Failures: 0, Errors: 0, Time elapsed: 0,02 sec [junit] [junit] Testcase: testCalculer took 0,01 sec [junit] Testcase: testCalculer took 0 sec [junit] Testcase: testSommer took 0 sec

Dveloppons en Java avec Eclipse

113

doc: [javadoc] [javadoc] [javadoc] [javadoc] [javadoc] [javadoc] [javadoc] [javadoc] [javadoc] [javadoc] all: [echo] Generation complete. BUILD SUCCESSFUL Total time: 4 seconds Generating Javadoc Javadoc execution Loading source file I:\eclipse 2.1\workspace\test_junit\src\MaClasse.java... Loading source file I:\eclipse 2.1\workspace\test_junit\src\MaClasse2.java... Constructing Javadoc information... Standard Doclet version 1.4.1 Building tree for all the packages and classes... Building index for all the packages and classes... Building index for all classes...

Dveloppons en Java avec Eclipse

114

11. JUnit et Eclipse

La version 2.1 d'Eclipse intgre la possibilit d'utiliser JUnit directement dans l'IDE. JUnit est un framework open source pour raliser des tests unitaires sur du code Java. Le principal intrt est de s'assurer que le code rpond toujours au besoin mme aprs d'ventuelles modifications. Le but est d'automatiser les tests. Ceux ci sont exprims dans des classes sous la forme de cas de tests avec leurs rsultats attendus. JUnit excute ces tests et les comparent avec ces rsultats. Avec Junit, l'unit de test est une classe ddie qui regroupe des cas de tests. Ces cas de tests excutent les tches suivantes : cration d'une instance de la classe et de tout autre objet necessaire aux tests appel de la mthode tester avec les paramtres du cas de test comparaison du rsultat obtenu avec le rsultat attendu : en cas d'chec, une exception est leve

11.1. Paramtrage de l'environement


Pour pouvoir utiliser JUnit dans un projet, il faut ajouter le fichier junit.jar dans le classpath du projet. Il faut pour cela : slectionner les proprits du projet dans l'onglet librairies, cliquer sur Add External Jar slectionner le fichier junit.jar dans le rpertoire plugins/org.junit_3.8.1 du rpertoire d'Eclipse

Eclipse ajoute le fichier junit.jar au classpath

Dveloppons en Java avec Eclipse

115

La classe suivante est utilise comme classe tester avec JUnit. Exemple :
package com.moi.test.junit; public class MaClasse { public int additioner(int a, int b) { return a + b; } }

11.2. Ecriture des cas de tests

Pour utiliser JUnit, il faut crer une classe qui va contenir les cas de test. Il faut crer une nouvelle entit de type Java/JUnit/TestCase

Dveloppons en Java avec Eclipse

116

Si le fichier junit.jar n'est pas inclus dans le classpath du projet, un message d'erreur est affich et il est impossible de poursuivre l'excution de l'assistant.

Dveloppons en Java avec Eclipse

117

Il faut complter la classe gnre selon les besoins : par exemple, ajouter un attribut qui va contenir une instance de la classe tester, ajouter l'instanciation de cette classe dans la mthode setUp() et librer cette instance dans la mthode tearDown(). Il faut ajouter les traitements ncessaires dans les mthodes testXXX() en utilisant l'API de JUnit. Exemple :
package com.moi.test.junit; import junit.framework.TestCase; public class MaClasseTest extends TestCase { private MaClasse maClasse = null; public MaClasseTest(String arg0) { super(arg0); } public static void main(String[] args) { junit.swingui.TestRunner.run(MaClasseTest.class); } protected void setUp() throws Exception { super.setUp(); maClasse = new MaClasse(); } protected void tearDown() throws Exception { super.tearDown(); maClasse = null; }

Dveloppons en Java avec Eclipse

118

public void testAdditioner() { assertTrue(maClasse.additioner(2,2) == 4); } }

JUnit utilise l'instrospection pour excuter les mthodes commenant par test.

11.3. Excution des cas de tests


Pour excuter les tests, il faut excuter la classe en tant que JUnit Test .

Eclipse excute les tests et affiche le rsultat dans une vue ddie.

Dveloppons en Java avec Eclipse

119

Si tous les cas de tests ont t excuts avec succs, une ligne verte est affiche. Cette vue contient deux onglets : Failures : contient la liste des cas de tests qui ont chous Hierarchy : contient une arborescence des cas de tests Dans le cas o un ou plusieurs tests chouent, la ligne est rouge. Exemple : si le cas test suivant est ajout :
public void testAdditioner() { assertTrue(maClasse.additioner(2,2) == 4); assertTrue(maClasse.additioner(2,3) == 4); }

Un excution permet d'avoir le rsultat suivant :

Dveloppons en Java avec Eclipse

120

Dveloppons en Java avec Eclipse

121

12. CVS et Eclipse

CVS (Concurrent Versions System) est un outil libre de gestion des versions. Initialement dvelopp pour Unix, une version pour windows NT/2000 de CVS peut tre tlcharge l'url http://www.cvsnt.org/ Toutes les donnes sont stockes dans un rfrentiel (repository). Chaque modification d'une ressource gre par CVS associe cette entit un numro de rvision unique. Une version contient un ensemble de ressource, chacune ayant une rvision particulire pour la version correspondante. CVS ne verrouille pas ces ressources. Deux dveloppeurs peuvent crer chacun une rvision d'une mme ressource. La fusion des deux versions est la charge d'un des dveloppeurs. Eclipse propose une perspective pour utiliser CVS dans un projet.

12.1. Installation de cvsnt


Il faut crer deux rpertoires, par exemple c:\cvs\cvsrepo et c:\cvs\cvstemp Excuter le programme d'installation cvsnt2.0.0.exe

Dveloppons en Java avec Eclipse

122

Cliquer sur Next

Accepter la licence et cliquer sur Next

Slectionner le rpertoire d'installation et cliquer sur Next

Dveloppons en Java avec Eclipse

123

Cliquer sur Next

Dveloppons en Java avec Eclipse

124

Cliquer sur Install

Une fois l'installation termine, cliquer sur Finish. Excuter le service control panel en cliquant sur l'icne dans le menu

"Dmarrer/Programmes/CVTNT" ou dans le panneau de configuration

Dveloppons en Java avec Eclipse

125

Dans l'onglet Repositories,

Cliquer sur Repository prefix et slectionner le rpertoire cvsrepo prcdemment cr. Cliquer sur Add

Saisir le nom du rpertoire et cliquer sur Ok

Cliquer sur oui

Dveloppons en Java avec Eclipse

126

Sur l'onglet Advanced

Slectionner le rpertoire temporaire prcdemment cr

Dveloppons en Java avec Eclipse

127

Sur l'onglet Service Status, cliquer sur Start

Cliquer sur Ok

12.2. La perspective CVS


La perspective Exploration du rfrentiel CVS permet de grer les changes et le contenu des projets stocks sous CVS.

Dveloppons en Java avec Eclipse

128

12.2.1. La cration d'un emplacement vers un rfrentiel


Dans la vue "Rfrentiels CVS", slectionner l'option "Nouveau/Emplacement du rfrentiel" du menu contextuel.

Une boite de dialogue s'ouvre pour dfinir un nouvel emplacement. Un emplacement contient uniquement les informations sur une connexion.

Dveloppons en Java avec Eclipse

129

Renseigner le nom de la machine, le chemin du rfrentiel, le nom du user, son mot de passe (celui de windows) et le type de connexion (utiliser pserver). Cliquer sur "Fin"

Si la connexion ne peut tre tablie, un message d'erreur est affich

12.2.2. Partager un projet

Il faut slectionner un projet dans une vue et slectionner l'option "Equipe/Partager le projet".

Dveloppons en Java avec Eclipse

130

Cliquer sur "Suivant".

Cette tape permet de donner un nom au module: celui du projet Eclipse ou un nom spcifique. Cliquer sur "Suivant".

Cliquer sur "Fin". La vue "Synchronisation Mode sortant" affiche les fichiers qui ont t modifis

Dveloppons en Java avec Eclipse

131

Dans cette vue, slectionner le projet et activer l'option "Ajouter au contrle de version" du menu contextuel.

Une fois le traitement effectu, activer l'option "Valider" du menu contextuel Une boite de dialogue demande la saisie d'un commentaire

12.2.3. Voir le projet dans la perspective CVS


Pour voir le projet, il faut rafrachir la vue Referentiel CVS en cliquant sur le bouton l'option "Rgnrer la vue" dans le menu contextuel. Dveloppons en Java avec Eclipse ou en activant

132

Remarque : si l'arborescence du projet n'est pas affiche, il suffit de cliquer sur le bouton l'option "Afficher les dossiers".

et de cocher

12.3. L'utilisation des rvisions

12.3.1. Crer une rvision


Lorsqu'une ressource est modifie et sauvegarde localement dans le workspace, il est possible d'enregistrer ces modifications dans CVS sous la forme d'une rvision. Il suffit de slectionner la ressource et d'activer l'option "Equipe/Synchroniser avec le rfrentiel". La vue "Synchronisation" s'affiche avec la ressource modifie.

Dans cette vue, il suffit de slectionner la ressource et d'activer l'option "Valider". Il est possible de saisir un commentaire. La vue "Synchronisation" permet la synchronisation entre les ressources locales (dans le workspace) et celles contenues dans CVS. Les trois premiers boutons permettent de prciser le sens de la synchronisation : mode entrant : modifications contenues dans le rfrentiel intgrer dans le workspace mode sortant : modifications contenues dans le workspace intgrer dans le rfrentiel mode entrant/sortant : modifications dans le workspace et le rfrentiel intgrer dans l'un et l'autre

12.3.2. Gestion des rvisions


Il faut slectionner une ressource et activer l'option "Equipe/Afficher dans l'historique des versions". La vue "Historique des ressources CVS" s'affiche en contenant les diffrentes rvision de la ressource.

Dveloppons en Java avec Eclipse

133

La rvision courante est prcde d'une petite toile. Pour remplacer la ressource par celle correspondant une autre rvision, il suffit de slectionner la rvision et d'activer l'option "Obtenir une rvision avec des marqueurs" du menu contextuel. Il faut ensuite cliquer sur "Ok" lors du message d'avertissement et la rvision courante est modifie. Il est possible de comparer le contenu de deux rvisions. Pour cela, il suffit de slectionner les deux rvisions en maintenant la touche Ctrl enfonce et d'activer l'option "Comparer" du menu contextuel.

12.4. La gestion des versions d'un projet

12.4.1. La cration d'une version d'un projet


Il faut slectionner le projet et activer l'option "Equipe/Baliser en tant que version" du menu contextuel. Une boite de dialogue demande le nom de la balise

Un clic sur le bouton "Dtails" permet de voir les versions existantes.

Dveloppons en Java avec Eclipse

134

Il suffit de saisir le nom et de cliquer sur le bouton "Ok" La version apparat dans la vue "Rfrentiels CVS"

12.5. Obtenir une version dans le worskspace


Dans la vue "Rfrentiels CVS", il suffit de cliquer sur la version concerne et d'activer l'option "Rserver en tant que projet" du menu contextuel. Si le projet est dj prsent dans le workspace, un message demande la confirmation pour le remplacement.

Dveloppons en Java avec Eclipse

135

13. Les autres perspectives

13.1. La perspective Ressource


Par dfaut, cette perspective contient les fentres suivantes : la vue "Navigateur" qui affiche les ressources (arborescence des fichiers) du workspace un diteur qui permet d'diter une ressource slectionne dans la vue "Navigateur" la vue "Structure" qui permet d'obtenir une arborescence prsentant les grandes lignes de certaines ressources en cours de traitement la vue "Tches" qui affiche une liste de tche effectuer

13.1.1. La vue "Navigateur"


Dans le workspace, chaque projet contient une hirarchie compose de dossiers et de fichiers. La vue "Navigateur" permet de prsenter, de naviguer dans l'arborescence et de slectionner une ressource.

A partir du Navigateur, il est possible d'ouvrir le fichier slectionn dans un diteur : avec l'diteur par dfaut associ au type du fichier, il suffit de double cliquer sur le fichier dans le navigateur ou d'utiliser l'option "Ouvrir" du menu contextuel. avec un autre diteur en utilisant l'option "Ouvrir Avec" du menu contextuel L'association d'un type de fichier avec un diteur peut tre faite dans les prfrences. La vue "Navigateur" contient une option particulirement pratique pour retrouver une ressource : l'outil"Accder ". Cet outil permet partir d'un motif (Pattern) de retrouver les ressources qui respectent le Dveloppons en Java avec Eclipse 136

motif dans leur nom. L'option "Accder / Ressource" du menu contextuel de la vue navigator permet d'ouvrir une bote de dialogue contenant l'outil.

Au fur et mesure de la saisie du motif, la liste des fichiers correspondant s'affiche. Il suffit de choisir le fichier et de cliquer sur "OK" pour fermer la bote de dialogue et slectionner le fichier dans la vue "Navigateur". Par dfaut, la vue "Navigateur" affiche tous les projets contenus dans le workspace. Il est possible de limiter la vue la hirarchie d'un projet ou d'un dossier en le slectionnant et en utilisant l'option "Suivant" du menu contextuel. Ces boutons permettent de passer d'un mode l'autre.

Le menu contextuel propose aussi des options pour copier, dplacer, renommer et supprimer une ressource.

Dveloppons en Java avec Eclipse

137

14. Les plugins

Eclipse est conu pour tre un outil modulaire. De nombreux modules (plugins) sont fournis avec Eclipse mais il est aussi trs facile d'en ajouter d'autres dvelopps par la communaut ou des socits commerciales. L'installation d'un plugin est souvent trs simple car elle consiste essentiellement dzipper l'archive qui contient le plugin pour que le contenu soit insrer dans le rpertoire plugins o est install Eclipse.

14.1. Informations sur les plug ins installs


menu aide / A propos de plateforme Eclipse

Cette bote de dialogue affiche des informations gnrales sur Eclipse et permet de slectionner le type d'informations supplmentaires souhaites. Cliquer sur Dtails des plug in

Dveloppons en Java avec Eclipse

138

Un clic sur le bouton "Dtails de la configuration" affiche un fichier dans la vue diteur contenant des informations dtailles sur la configuration en cours d'utilisation.

Un clic sur le bouton "Dtails des dispositifs", permet d'avoir des informations sur les lments de base d'Eclipse.

Dveloppons en Java avec Eclipse

139

14.2. Un exemple avec le module JadClipse sous Eclipse 1.0


Jadclipse est un module qui permet d'utiliser le dcompilateur jad dans Eclipse. Il suffit de tlcharger le fichier zip contenant le module. Il faut aussi avoir ou tlcharger l'outil jad. Pour installer le plugins, il suffit simplement de dezipper le fichier dans le rpertoire plugins du rpertoire principale d'Eclipse. Pour que le module soit pris en compte et configurer automatiquement, il suffit de lancer ou relancer Eclipse. A l'ouverture d'un fichier .class, le menu Decompile apparat dans le menu principal. Il faut cocher l'option Engage Jadclipse . Chaque fichier .class ouvert est automatiquement decompil et le code source est affich dans l'diteur.

Le module est parfaitement intgr dans Eclipse : les options du module sont modifiables dans l'arborescence "Java / Jadclipse" des prfrences (menu "Window / Preferences").

14.3. Le plug in Jalopy


Jalopy est un utilitaire open source trs pratique qui permet de formatter du code source Java et mme de vrifier l'application de normes de codage.

Dveloppons en Java avec Eclipse

140

Il permet notamment : d'indenter le code de gnrer des modles de commentaires javadoc dynamique en fonction des l'lments du code documenter (par exemple gnrer un tag @param pour chaque paramtre d'un mthode) d'organiser l'ordre des clauses import d'organiser l'ordre des membres d'une classe selon leur modificateur de vrifier l'application de normes de codage, Il existe des plug in pour plusieurs IDE dont un pour Eclipse : il suffit de tlcharger le fichier jalopyeclipse0.2.6.zip sur le site http://jalopy.sourceforge.net/download.html Pour installer le plug in, il faut dzipper le contenu de l'archive dans un rperoire temporaire et copier le rpertoire de.hunsicker.jalopy.plugin.eclipse_0.2.6 dans le rpertoire plugins d'Eclipse. L'option Jalopy preferences du menu "Fenetre" permet de paramtrer 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() {} }

Rsultat :
package com.moi.test; /** * DOCUMENT ME! * * @author $author$ * @version $Revision$ */

Dveloppons en Java avec Eclipse

141

public class TestJalopy { /** * DOCUMENT ME! * * @param args DOCUMENT ME! */ public static void main(String[] args) { } /** * DOCUMENT * * @param a * @param b */ public void }

ME! DOCUMENT ME! DOCUMENT ME! 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 ralis en tenant compte des nombreux paramtres dfinis dans Jalopy. Il est galement possible de demander le formattage de l'ensemble des fichiers source Java contenus dans un ou plusieurs packages ou rpertoires. Il suffit de slectionner le ou les packages ou rpertoire et de slectionner l'option "Format" du menu contextuel.

Dveloppons en Java avec Eclipse

142

15. La gestion de la plateforme

Eclipse 2.0 propose une fonctionnalit qui permet d'installer ou de mettre jour des plugins via le web. La perspective Installation / Mise jour permet la gestion de ces mises jour. Pour l'afficher, il suffit de slectionner cette perspective ou de slectionner l'option Mise jour des logiciels / Gestionnaire des mises jour du menu "Aide".

La vue "Mises jour des dispositifs" recence la liste des sources d'o peuvent tre tlcharges les mises jour.

15.1. Recherche et installation des mises jour


Il faut utiliser l'option "Mise jour des logiciels" du menu "Aide". Un assistant recherche les mises jour pour les mises jour permis celles enregistres dans Eclipse.

Dveloppons en Java avec Eclipse

143

L'exemple ci dessous illustre la mise jour d'une version 2.1 d'Eclipse avec la version 2.1.1.

Cliquez sur le bouton "Next"

Cliquer sur le bouton "Finish"

Dveloppons en Java avec Eclipse

144

Cliquez sur le bouton "Installer". Une fois l'installation termine, il faut relancer Eclipse.

15.2. Installation d'un nouveau plug in


L'exemple ci dessous met en oeuvre l'installation du plug in Easy Struts. Pour d'autres plug in permetant leur mise jour par le rseau, la procdure est similaire. Pour ajouter une nouvelle source, il suffit de slectionner l'option Nouveau / Signet du site ... du menu contextuel de la vue Mises jour des dispositifs .

Une bote de dialogue permet de saisir un nom et l'URL du signet.

Dveloppons en Java avec Eclipse

145

Il faut saisir le nom et l'url du fichier site.xml dsir puis cliquer sur le bouton "Fin".

L'application va lire le fichier et affiche les plugins disponibles dans l'arbrescence. Il suffit de slectionner la version dsire. La vue "Aperu" affiche le details du plugin slectionn. Pour installer la version slectionne, cliquer sur le bouton "Install" dans la vue Aperu .

Dveloppons en Java avec Eclipse

146

Cliquer sur "Next". Lire et accepter la licence, puis cliquer sur le bouton Next

Slectionner la cible d'installation et cliquer sur le bouton Finish.

Dveloppons en Java avec Eclipse

147

Confirmer l'installation, car le package n'est pas sign, en cliquant sur le bouton Install Le plug est tlcharg et install. L'assistant propose de redmarrer le workbench pour que les modifications soient prises en compte. Cliquer sur le bouton "Yes".

Il peut tre intressant d'ajouter le site officielle d'Eclipse pour ajouter des plugins qui ne sont pas fournis en standard.

Un fois le nouveau signet configur, il suffit de naviguer dans l'arborescence en fonction de la version de la plateforme pour pouvoir installer un ou plusieurs plugins parmis ceux proposs.

Dveloppons en Java avec Eclipse

148

15.3. Sauvegarde et restauration dune configuration


A chaque mise jour, Eclipse enregistre la configuration. Il est aussi possible de demander la sauvegarde explicite de la configuration : il faut, dans la perspective Installation / Mise jour slectionner Plateforme Eclipse dans la vue Configuration de linstallation

Il suffit de cliquer sur le bouton Sauvegarder dans la vue Aperu

Dveloppons en Java avec Eclipse

149

Pour restaurer une configuration, il suffit de slectionner dans la vue Configuration de linstallation le sauvegarde automatique (dans historique de la configuration) ou la sauvegarde manuelle (dans Configuration sauvegardes).

Il suffit ensuite de cliquer sur le bouton Restaurer de la vue Aperu .

Cette opration ncessite un redmarrage de lapplication.

15.4. Rsolution des problmes de dpendances


Il est possible que la mise jour ou linstallation dun plug in choue notamment pour des questions de dpendances visvis dun autre plug in. Dans ce cas, la mise jour est signale avec une croix blanche dans un rond rouge.

Dveloppons en Java avec Eclipse

150

Pour avoir plus dinformations, il suffit de slectionner la mise jour et de cliquer sur le bouton Dtails de lerreur .

Dans lexemple cidessus, il manque un plug in ou la version installe nest pas correcte. Pour rsoudre le problme, il suffit de quitter Eclipse, dinstaller le plug in (en le dzippant dans le bon rpertoire) et de relancer Eclipse.

Il suffit alors de dcocher la mise jour posant problme et de cliquer sur le bouton Fin afin de mettre jour le plug in manquant. Cette opration ncessite le redmarrage dEclipse.

Dveloppons en Java avec Eclipse

151

Suite ce redmarrage, le plug in erron napparat plus en erreur et peut tre install en cliquant sur le bouton Fin .

Dveloppons en Java avec Eclipse

152

16. Le dveloppement sans Java

Eclipse est un outils de dveloppement, crit en Java, dont un des buts initiaux est de pouvoir dvelopper non seulement en Java mais aussi avec d'autres langages grce des plug in spcifique. Il existe dj plusieurs plug in plus ou moins avancs pour raliser des dveloppements en C/C++ et Cobol dvelopp par Eclipse mais aussi C# ou PHP dvelopps par des tiers.

16.1. CDT pour le dveloppement en C / C++


CDT (C/C++ Development Tools) est un sous projet du projet "Eclipse Tools" dont le but est de fournir un environnement intgr de dveloppement en C /C++ sous la forme de plug ins pour Eclipse. Le CDT ajoute une perspective nomme "C/C++" au workbench. Le CDT ne fournit pas de compilateur : il est ncessaire d'utiliser un compilateur externe. Le seul compilateur actuellement support par le CDT est le celbre compilateur GCC du projet GNU. D'autres outils du projet GNU sont aussi necessaires tel que make ou GDB (GNU Debugger). Sous linux, ces outils peuvent tre facilement installs en utilisant les packages adquats selon la distribution utilise. Sous Windows, l'utilisation de ces outils peut tre mise en oeuvre grce l'installation d'un des deux outils suivants : Cygwin : c'est un projet de la socit Red Hat (http://www.redhat.com/software/cygwin/) MinGW (Minimalist GNU for Windows) : c'est un projet open source qui a pour but de fournir un ensemble de fichier entte et de bibliothques pour gnrer des excutable natif sous Windows en utilisant des outils du projet GNU. (http://www.mingw.org/) Dans ce chapitre, l'installation et l'utilisation de MinGW avec le CDT sera dtaille pour une utilisation sur une plateforme Windows. Bien qu'crit en Java, le CDT est dpendant de la plateforme sur laquelle il s'excute.

16.1.1. Installation du CDT


Pour installer le CDT, il faut utiliser le mcanisme de mise jour en utilisant l'option "Mise jour des logiciels / Gestionnaire des mises jour" du menu "Aide".

Dveloppons en Java avec Eclipse

153

Dans la vue mise jour des dispositifs, utiliser loption Nouveau / Signet du site du menu contextuel. Il faut saisir un nom par exemple "Eclipse CDT" et saisir l'url "http://update.eclipse.org/tools/cdt/updates/release".

Cliquer sur le bouton "Fin" pour permettre Eclipse de rechercher les mises jour. La vue "Mise jour des dispositifs" affiche celles disponibles.

Dveloppons en Java avec Eclipse

154

Slectionnez la mise jour Eclipse C/C++ Development Tools (Windows).

La vue "Aperu" affiche des informations sur le plugin. Cliquez sur le bouton Installer Maintenant

Dveloppons en Java avec Eclipse

155

Cliquez sur le bouton Suivant

Lisez et si vous acceptez les termes du contrat, cliquez sur le bouton Suivant

Cliquez sur le bouton Fin

Dveloppons en Java avec Eclipse

156

Cliquer sur le bouton Installer .

L'installation ncessite un redmarrage de l'application.

Cliquez sur le bouton Oui . Faites la mme opration avec la mise jour Eclipse C/C++ development tools CppUnit support 1.1.0. Si vous installez cette mise jour avant la prcdente, le message derreur suivant est affich.

Dveloppons en Java avec Eclipse

157

Une fois l'installation termine, l'diteur de la prespective ressource affiche des informations sur le CDT.

16.1.2. Cration d'un premier projet


Pour pouvoir utiliser le CDT, il faut tout d'abord crer un nouveau projet.

Dveloppons en Java avec Eclipse

158

Pour un projet en C++, slectionnez "C++" dans la liste de gauche puis "Standard Make C++ Project" dans la liste de droite et enfin cliquez sur le bouton "Suivant"

Saisissez le nom du projet et cliquer sur Suivant .

Sous Windows, dans longlet Binary Parser , cliquez sur PE Windows Parser puis sur le bouton Fin .

Il faut ensuite crez un nouveau fichier dans le projet.

Dveloppons en Java avec Eclipse

159

Saisissez le nom du fichier et cliquez sur le bouton Fin .

Il suffit de saisir le code de lapplication dans lditeur : Exemple :


#include <iostream> using namespace std; int main () { cout << "Bonjour" << endl; char input = ''; cin >> input; exit(0); }

Il faut ensuite crer un fichier nomm makefile pour automatiser la gnration de l'excutable grce l'outils make.

Dveloppons en Java avec Eclipse

160

Cliquez sur le bouton Suivant puis sur le bouton Fin .

16.1.3. Installation de MinGW


Pour pouvoir compiler des fichiers sources avec le CDT, il est ncessaire de disposer un compilateur externe. Pour l'instant seul le compilateur GCC du projet GNU est support. N'tant pas directement fourni dans Windows, il faut l'installer grace un outils tiers. Cette section dcrit la procdure d'installation avec l'outils open source Minimalist GNU for Win32 (MinGW). Il faut downloader les fichiers MSYS1.0.9.exe et MinGW3.1.01.exe sur le site http://www.mingw.org/ Lancez l'excution de MinGW en premier.

Dveloppons en Java avec Eclipse

161

L'assistant d'installation se compose de plusieurs pages : Sur la page d'accueil, cliquez sur le bouton "Next". La page "License Agreement" apparait : lisez la licence et cliquez sur le bouton "Yes" pour accepter les termes de la licence et poursuivre l'installation. La page "Information" apaprait : lisez le texte et cliquez sur le bouton "Next". La page "Select destination directory" apparait : slectionnez le rpertoire ou sera installer MinGW et cliquez sur le bouton "Next". La page "Ready to install" apparait : cliquez sur le bouton "Install". Lancez l'excution de MinSys. Un script permet de configurer l'environnement.

Dveloppons en Java avec Eclipse

162

16.1.4. Premire configuration et excution


Il faut modifier les proprits du projet pour utiliser les options de la commande make fournie avec MSYS.

Il faut dcocher "use default" et saisir "make f makefile" dans le champ "build command".

Il faut ajouter les rpertoire suivants dans la variable denvironnement path : C:\msys\1.0\bin;C:\MinGW\bin; Attention : aprs la modification, il faut relancer Eclipse si celui ci tait en cours dexcution. Si les outils make et gcc ne sont pas trouvs, alors le message suivant est afficher dans la vue CBuild Exemple :
Build Error (Exec error:Launching failed)

Attention : il est important que le bon programme makefile soit le premier trouv dans le classpath. Il est par exemple possible davoir des problmes avec loutils Delphi de Borland qui ajoute dans le classpath un rpertoire qui contient un programme Makefile.

Dveloppons en Java avec Eclipse

163

Dans ce cas, il suffit de dplacer ou de supprimer la rfrecence sur le rpertoire C:\Program Files\Borland\Delphi7\Bin; dans la variable classpath. (il faut le remettre en cas de suppression pour une utilisation correcte de Delphi). Si la gnration se passe bien, le vue CBuild affiche les tapes de le gnration. Exemple :
make f makefile gcc c premierTest.cpp gcc o premierTest premierTest.o L C:/MinGW/lib/gcclib/mingw32/3.2.3/ lstdc++

Lancer lexcution, il suffit de slectionner le fichier premierTest.exe et dutiliser l'option Ouvrir du menu contextuel.

16.1.5. Utilisation du CDT


L'environnement de dveloppement propos par le CDT tant un cours de dveloppement, il n'est pas encore aussi complet que l'environnement propos par le JDT pour Java. La version 1.1. du CDT propose cependant les fonctionnalits suivantes : coloration syntaxique dans l'diteur de code navigation dans un code source grce la vue outline l'diteur possde un assistant de code utilisant des modles (templates) utilisation de l'historique locale pour retrouver en local un certain nombre de version locale du code ...

Dveloppons en Java avec Eclipse

164

17. Le dveloppement d'interfaces graphiques

La suite de ce chapitre sera dveloppe dans une version future de ce document

17.1. Eclipse et SWT


Eclipse est dvelopp en utilisant SWT comme API pour le dveloppement de son inteface graphique pour l'utilisateur. Pour le dveloppement de plug ins, l'utilisation de SWT est donc fortement recommande mais il est aussi possible d'utiliser Eclipse et SWT pour dveloppement des applications standalone.

17.1.1. Configurer Eclipse pour dvelopper des applications SWT


Sans plug ins, il est possible de dvelopper des applications graphiques utilisant SWT avec Eclipse. Bien sre, linconvnient majeur est de devoir crire tout le code " la main ". Pour le dveloppement dapplications SWT, il est ncessaire de configurer certains lments notamment le classpath. Dans cette section, la version de SWT utilise est la 2.1. Pour utiliser SWT dans un projet, il faut ajouter dans son classpath le fichier swt.jar. Dans les proprits du projet, slectionnez Chemin de compilation Java et cliquez sur le bouton Ajouter des fichiers jar externes . Une bote de dialogue permet de slectionner le fichier swt.jar. Ce fichier est dpendant du systme dexploitation sur lequel lapplication va sexcuter. Par exemple sous Windows, ce fichier se trouve dans le sous rpertoire plugins\org.eclipse.swt.win32_2.1.0\ws\win32\ du rpertoire dinstallation dEclipse. Cliquez sur Ok pour valider les modifications et recompiler le projet. Pour pouvoir excuter le projet, il faut que lapplication puisse accder une bibliothque particulire qui sous Windows se nomme swtwin322135.dll. Ce fichier se trouve dans le sous rpertoire plugins\org.eclipse.swt.win32_2.1.2\os\win32\x86 du rpertoire dinstallation dEclipse. Le nom et le chemin de cette bibliothque dpend de la version de SWT qui est utilise. Il y a plusieurs solutions possibles pour mettre ce fichier disposition dune application : 1. prcisez le chemin de la bibliothque dans les paramtres de la machine virtuelle lors de lexcution Pour cela choisissez, Excuter pour ouvrir la bote de dialogue de configuration dexcution. Dveloppons en Java avec Eclipse 165

Sur longlet Arguments , saisir Djava.library.path="chemin_complet_du_fichier" et cliquez sur le bouton Appliquer puis sur le bouton Excuter

Linconvnient de cette mthode est que cette configuration doit tre effectue pour chaque configuration de lancement. 2. Ajouter le rpertoire qui contient la bibliothque la variable PATH sous Windows ou LD_LIBRAY_PATH sous Unix. 3. Il est possible de copier la bibliothque dans un rpertoire contenu dans la variable java.library.path. Linconvnient de cette mthode est quil faut recopier la bibliothque chaque nouvelle version de SWT utilise. 4. Il est possible de copier la bibliothque dans le rpertoire racine de lapplication. Linconvnient de cette mthode est quil faut recopier la bibliothque dans chaque projet qui utilise SWT.

Lors de lexcution si la bibliothque ne peut tre accde par lapplication, une exception est leve. Exemple :
java.lang.UnsatisfiedLinkError: no swtwin322135 in java.library.path

17.1.2. Un exemple trs simple


Exemple :
import org.eclipse.swt.*; import org.eclipse.swt.graphics.*; import org.eclipse.swt.widgets.*; public class TestSWT2 { public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); shell.setText("Test"); Composite composite = new Composite(shell, SWT.NONE); Color couleur = new Color(display,131,133,131); composite.setBackground(couleur); Label label = new Label(composite, SWT.NONE); label.setBackground(couleur); label.setText("Saisir la valeur"); label.setBounds(10, 10, 100, 25); Text text = new Text(composite, SWT.BORDER); text.setText("mon texte"); text.setBounds(10, 30, 100, 25); Button button = new Button(composite, SWT.BORDER); button.setText("Valider");

Dveloppons en Java avec Eclipse

166

button.setBounds(10, 60, 100, 25); composite.setSize(140,140); shell.pack(); shell.open(); while (!shell.isDisposed()) if (!display.readAndDispatch()) display.sleep(); couleur.dispose(); display.dispose(); } }

Si l'environnement est correctement configur comme expliqu dans la section prcdente, l'excution de l'application se fait comme tout autre application.

17.2. Le plug in Eclipse V4all


V4All est un projet open source qui a pour but de dvelopper un plug in pour Eclipse permettant le dveloppement dinterfaces graphiques avec Swing ou SWT.

17.2.1. Installation
V4All require linstallation du plug in GEF (Graphical Editing Framework) en excutant les tapes suivantes : tlcharger le fichier http://download.eclipse.org/tools/gef/downloads/drops/R2.1.1200306180934/GEFruntimeI20030618.zip sur le site dEclipse dzippez ce fichier dans le rpertoire qui contient Eclipse. relancez Eclipse et cliquer sur le bouton Fin pour valider les modifications apportes par le plugin cliquez sur le bouton Oui lors de la demande de relance de lapplication. Pour installer V4All, il faut suivre les tapes suivantes : tlchargez le fichier v4all_2_1_1_9.zip sur le site http://sourceforge.net/projects/v4all dzippez son contenu dans le rpertoire qui contient Eclipse. relancez Eclipse et cliquer sur le bouton Fin pour valider les modifications apportes par le plugin cliquez sur le bouton Oui lors de la demande de relance de lapplication. Dveloppons en Java avec Eclipse 167

17.2.2. Utilisation
Pour utiliser v4all, il faut crer ou utiliser un projet Java existant, puis il faut crer un nouveau projet de type V4E editor .

Cliquer sur le bouton Suivant

Un assistant permet de slectionner le projet Java qui va contenir le code, de saisir le nom du fichier qui va contenir les informations, et de slectionner lAPI utiliser Il suffit de cliquer sur le bouton Fin pour que la perspective ddie V4All saffiche.

Dveloppons en Java avec Eclipse

168

V4All propose son propre diteur pour raliser de manire WYSIWYG des interfaces graphiques. Cet diteur se compose de deux parties : une barre latrale qui permet de dfinir une action et de slectionner un composant une zone de travail sur laquelle les composants sont dposs par cliquer/glisser Par dfaut, chacun des lments de la barre est ouvert, ce qui les rend peu visibles. Pour ouvrir un seul lment, il suffit de double cliquer sur son titre.

Dveloppons en Java avec Eclipse

169

Lapparence de la barre peut tre configure pour faciliter son utilisation : le menu contextuel de la barre propose plusieurs options intressantes :

Lutilisation de loption Use large Icons amliore la visibilit des icnes. Loption Layout permet de slectionner le mode daffichage des composants : lutilisation de loption Details permet davoir un libell associ licne.

17.2.3. Un exemple simple


Crez un nouveau projet V4All. Dans les proprits, mettre la valeur True la proprit Generation / Generate Main . Faire un cliquer/glisser du composant Frame sur la zone ddition A partir de ce moment, il est possible de demander la gnration du code et son excution en utilisant loption Run du menu contextuel Code generation And Run . Lapplication se lance et la fentre dfinie saffiche : elle est dj fonctionnelle et il suffit de cliquer sur le bouton de fermeture pour arrter lapplication.

Pour ajouter un bouton, il suffit de faire un cliquer/glisser du composant sur la Frame : le conteneur qui va recevoir le composant change de couleur.

Dveloppons en Java avec Eclipse

170

Chaque composant possde de nombreuses proprits quil est possible de modifier dans la vue proprits. Cette vue affiche les proprits du composant slectionn dans lditeur. Pour un bouton, il est par exemple possible de modifier le nom du composant avec la proprit Basic / Bean Name , le texte du bouton avec Component / Text , Procder de la mme faon pour ajouter une zone de texte (composant de type TextField).

17.3. Le plug in W4Eclipse


http://w4toolkit.com/index.php

17.4. SWT designer


http://www.swtdesigner.com/ SWT designer existe en deux version : une libre nomme "free edition" et une commerciale nomme professional .

Dveloppons en Java avec Eclipse

171

18. Annexes
Annexe A : GNU Free Documentation License
Version 1.1, March 2000

Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 021111307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other written document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND dfiniTIONS This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A "Secondary Section" is a named appendix or a frontmatter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. The "Cover Texts" are certain short passages of text that are listed, as FrontCover Texts or BackCover Texts, in the notice that says that the Document is released under this License. A "Transparent" copy of the Document means a machinereadable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and Dveloppons en Java avec Eclipse 172

straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standardconforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machinegenerated HTML produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. 2. VERBATIM COPYING You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. 3. COPYING IN QUANTITY If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: FrontCover Texts on the front cover, and BackCover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machinereadable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publiclyaccessible computernetwork location containing a complete Transparent copy of the Document, free of added material, which the general networkusing public has access to download anonymously at no charge using publicstandard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 Dveloppons en Java avec Eclipse 173

above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:

A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission. B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has less than five). C. State on the Title page the name of the publisher of the Modified Version, as the publisher. D. Preserve all the copyright notices of the Document. E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices. F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below. G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice. H. Include an unaltered copy of this License. I. Preserve the section entitled "History", and its title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. K. In any section entitled "Acknowledgements" or "Dedications", preserve the section's title, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. M. Delete any section entitled "Endorsements". Such a section may not be included in the Modified Version. N. Do not retitle any existing section as "Endorsements" or to conflict in title with any Invariant Section. If the Modified Version includes new frontmatter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various partiesfor example, statements of peer review or that the text has been Dveloppons en Java avec Eclipse 174

approved by an organization as the authoritative dfinition of a standard. You may add a passage of up to five words as a FrontCover Text, and a passage of up to 25 words as a BackCover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of FrontCover Text and one of BackCover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version. 5. COMBINING DOCUMENTS You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections entitled "History" in the various original documents, forming one section entitled "History"; likewise combine any sections entitled "Acknowledgements", and any sections entitled "Dedications". You must delete all sections entitled "Endorsements." 6. COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an "aggregate", and this License does not apply to the other selfcontained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document's Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate. 8. TRANSLATION Translation is considered a kind of modification, so you may distribute translations of the Document under the Dveloppons en Java avec Eclipse 175

terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail. 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/. Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.

Annexe B : Webographie
http://www.eclipse.org/ le site officiel d'Eclipse http://www.eclipse.org/downloads/index.php la page officielle pour le tlchargement d'Eclipse http://www.eclipsetotale.com/index.html portail en franais consacr au projet Eclipse et aux outils WebSphere Studio d'IBM

http://eclipseplugins.2y.net/eclipse/index.jsp

http://eclipsewiki.swiki.net/ http://www.sysdeo.com/eclipse/tomcatPluginFR.html plugin pour utiliser Tomcat dans Eclipse http://www.eclipseworkbench.com/jsp/ portail en anglais

Dveloppons en Java avec Eclipse

176

http://www.geocities.com/uwe_ewald/dbedit.html un plugin qui permet de visualiser le contenu d'une base de donnes

Dveloppons en Java avec Eclipse

177

Vous aimerez peut-être aussi