Vous êtes sur la page 1sur 22

Installation et utilisation d'eclipse

pour le dveloppement en Java

Par Henri Garreta

Date de publication : 22 juillet 2009


Dernire mise jour : 22 juillet 2009

La version originale de cet article peut tre trouve ici . Copyright Henri Garreta ,
Universit de la Mditerrane (Aix-Marseille Universit) et Facult des Sciences de
Luminy.
La documentation en ligne d'eclipse est abondante mais son approche n'est pas immdiate.
Sans souci d'exhaustivit, nous donnons ici quelques indications pour dbuter rapidement
dans l'utilisation de cet excellent outil de dveloppement.
A la date du 16 juillet 2009, les versions courantes des logiciels en question sont :

Java JDK 1.6.0 (ou 6) update 14 ;


Eclipse platform 3.5.0 Galileo .

Les versions dcrites ici ne sont peut-tre pas exactement celles-l mais elles leur sont
fonctionnellement quivalentes.

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

I - Se procurer le kit de dveloppement Java.............................................................................................................4


II - Tlcharger eclipse................................................................................................................................................5
III - Installer eclipse..................................................................................................................................................... 5
IV - Premier lancement d'eclipse................................................................................................................................ 5
V - Configurer eclipse pour faire du Java................................................................................................................... 7
VI - Dvelopper un programme Java.......................................................................................................................... 8
VII - O sont mes fichiers sources ?.........................................................................................................................13
VIII - Comment amener dans eclipse des fichiers crs ailleurs ?...........................................................................13
VIII-A - Vous avez dj un projet eclipse............................................................................................................ 13
VIII-B - Vous n'avez qu'un ensemble de fichiers sources Java...........................................................................13
IX - Dboguer les programmes................................................................................................................................. 13
X - Le refactoring ................................................................................................................................................ 16

-3-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

I - Se procurer le kit de dveloppement Java


Eclipse ne contient ni le compilateur Java ni les autres outils basiques. Pour dvelopper des programmes en Java,
il faut donc installer au pralable un kit de dveloppement. Nous conseillons celui de Sun Microsystems, la maison
mre de Java, qui est complet, jour (par dfinition) et gratuit.
Vous pouvez l'obtenir chez Sun : site java.sun.com , menu Downloads, rubrique Java SE (comme Standard Edition).
Le produit tlcharger s'appelle, lors de la publication de cette notice, JDK 6 update 14 .
Attention, ne confondez pas le JDK (Java Development Kit) avec le JRE (Java Runtime
Environment), appel parfois plugin Java , qui ne contient que le ncessaire pour excuter
les programmes Java. Ne vous occupez pas de tlcharger le JRE, l'intrieur du JDK il y en
a un exemplaire.
Le fichier qui vous concerne se nomme :

dans le cas de Windows : jdk-6u14-windows-i586.exe (73,5 Mo) ;


dans le cas de Linux : jdk-6u14-linux-i586.bin (77 Mo).

Il s'agit dans les deux cas d'un installateur auto-extractible : aprs le tlchargement, il suffit de le lancer et de suivre
les instructions qui s'affichent. Au besoin, des renseignements supplmentaires sur l'installation du JDK sont donns
sur le site de Sun, aussi bien pour Windows que pour Linux.
Une fois l'installation termine, vrifiez sa russite en tapant java -version dans une console de commandes.
Vous devez obtenir un message vous annonant le numro de version de la machine Java mise en place. Dans le
cas de Windows, cela ressemblera ceci :

Pour dvelopper des programmes en Java, il vous faut disposer galement de la documentation de l'API (Application
Programmer Interface, c'est--dire le volumineux ensemble de paquetages, classes, mthodes et variables qui
constituent la bibliothque systme). Vous pouvez la consulter en ligne ou bien la tlcharger depuis le site
java.sun.com , menu Downloads, rubrique Java SE, produit Java SE 6 Documentation (quel que soit votre systme
d'exploitation, le fichier s'appelle jdk-6u10-docs.zip et pse 56 Mo).
Note (cas de Windows). Si vous souhaitez pouvoir employer le compilateur et les autres outils
Java en dehors d'eclipse, c'est--dire en tapant des commandes dans une console Invite de
commandes, alors vous devez procder la manipulation supplmentaire suivante : reprer le
rpertoire d'installation de Java et ajouter le chemin \bin dans la dfinition de la variable
Path.
Si vous avez laiss l'installateur de Java faire sa guise, doit tre quelque chose comme C:
\Program Files\Java\jdk1.6.0_04.
Vous pouvez examiner et modifier la valeur de la variable Path en cliquant avec le bouton
droit sur l'icne du Poste de travail, puis Proprits > Avanc > Variables d'environnement >
Variables systme ; slectionner la ligne Path puis faire Modifier.
-4-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Dans le cas de Linux, une manipulation analogue est ncessaire aprs l'installation du JDK. Nous ne l'expliquons
pas car elle fait partie des oprations courantes sur ce systme.

II - Tlcharger eclipse
Eclipse est un logiciel libre que vous pouvez tlcharger depuis le site www.eclipse.org , onglet Downloads. Le
produit qui nous intresse est Eclipse IDE for Java Developers (92 MB).
Le fichier tlcharg se nomme :

dans le cas de Windows : eclipse-java-galileo-win32.zip ;


dans le cas de Linux : eclipse-java-galileo-linux-gtk.tar.gz ;
dans le cas de Max OS X : eclipse-java-galileo-macosx-carbon.tar.gz.
Nous ne vous conseillons pas de tlcharger une version franaise d'eclipse. Il existe bien
des plugin de francisation de l'interface, mais outre le fait qu'elles sont assez imparfaites, elles
servent surtout vous empcher d'utiliser la dernire version du logiciel.

III - Installer eclipse


A partir d'ici, les explications sont communes aux divers systmes d'exploitation, ou bien ne
concernent que Windows XP et Vista.
Pour installer eclipse, il suffit de dcompresser l'archive zip ou tar.gz tlcharge. Cela cre un dossier, nomm
eclipse, que nous vous conseillons de placer aussi haut que vous le pouvez dans la hirarchie de fichiers de votre
systme.
Dans la suite de cette note nous supposons que vous avez fait ainsi et que vous avez donc un dossier nomm C:
\eclipse.
Pour faciliter le lancement d'eclipse, crez un raccourci vers le fichier C:\eclipse\eclipse.exe et placez-le sur le
bureau, dans le menu dmarrer ou ailleurs, selon vos gots.
L'installation d'eclipse est donc bien plus lgre que celle de beaucoup de logiciels ; en
particulier, sous Windows, elle ne produit pas d'inscription dans la base de registres. Par
consquent, pour dsinstaller compltement eclipse il suffira, le moment venu, de mettre la
corbeille le dossier C:\eclipse et les divers espaces de travail (dossiers workspace , voir cidessous) crs ultrieurement.

IV - Premier lancement d'eclipse


Lancez eclipse, par exemple en double-cliquant sur le raccourci que vous venez de crer. Au bout de quelques
instants, on vous demandera de situer l'espace de travail dans lequel seront vos fichiers. Si vous travaillez sur un
ordinateur partag, il est conseill de mettre l'espace de travail dans votre dossier Documents (sur Windows XP il se
trouve dans le dossier Documents and Settings). Si vous tes le seul utilisateur de votre systme, mettez l'espace
de travail o bon vous semble.
Sauf indication contraire, les fichiers sources de vos programmes se trouveront dans l'espace
de travail. Il est donc important de se souvenir de l'emplacement de ce dernier pour accder
aux sources (par exemple, pour les transporter, les copier, etc.).

-5-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Si vous cochez la case Use this as the default and do not ask again eclipse ne vous posera plus cette question
(mais il y a toujours un moyen pour changer ultrieurement l'espace de travail : File > Switch Workspace > Other...).
Au bout de quelques instants (la premire fois ce n'est pas trs rapide) vous obtenez un cran qui prsente le produit,
comme ceci :

Vous pouvez feuilleter cette prsentation, elle est faite pour cela. Quand vous en aurez assez, cliquez sur le lien
Workbench (la flche reprsente droite de l'cran). Le contenu de la fentre devient tout de suite beaucoup plus
srieux :

-6-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

V - Configurer eclipse pour faire du Java


Eclipse est un environnement qui permet une grande varit d'activits de dveloppement (pour vous en
convaincre, faites un tour chez eclipse plugin central, chez eclipse plugins ou bien sur le site francophone
eclipsetotale.com). En standard, eclipse est prt pour le dveloppement en Java, encore faut-il veiller ce que
la perspective (c'est--dire l'arrangement des vues montres l'cran) soit celle qui convient le mieux Java. Si
ce n'est pas le cas, agissez sur la petite icne en haut droite cercle de rouge sur la figure 4, tiquete Open
perspective et choisissez Java.
Fermez les vues Task List et Outline ( droite) ; pour afficher la structure des classes, la vue Package explorer (
gauche) suffit. Vous obtenez un cadre de travail tout fait commode pour dvelopper en Java :

-7-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

VI - Dvelopper un programme Java


Pour commencer, crer un projet.
Note pour les tudiants. Ne vous sentez pas obligs de crer un nouveau projet chaque fois que
vous commencez un nouvel exercice de programmation : vous pouvez trs bien avoir un seul
projet, contenant tous les exercices que vous faites dans le cadre d'un enseignement. D'autant
plus que cela ne vous empchera pas de bien ranger vos fichiers : un projet peut contenir
plusieurs packages java (qui se traduiront dans le systme de fichiers par des rpertoires
diffrents).
Pour crer un projet, cliquez sur le premier des boutons d'assistants Java (cercl de rouge sur la figure 5) etiquet
New Java Project .
Vous obtenez le panneau New Java Project o, au minimum, vous devez donner un nom pour votre projet :

-8-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

La mthode rapide consiste donner un nom de projet (si possible, moins bte que Mon projet gnial...) et cliquer
sur le bouton Finish. Notez que les autres questions poses dans ce panneau sont intressantes. La troisime,
notamment, permet de conserver sparment les fichiers sources (prcieux) et les fichiers classes (qu'en cas de
perte on peut toujours refaire).

Dans un projet srieux nous commencerions par crer des packages (deuxime bouton des assistants Java, New
Java Package ). Mais, puisque nous dbutons, allons l'essentiel et ajoutons directement une ou plusieurs classes
au projet : c'est le troisime des boutons d'assistants Java, New Java Class (cercl de rouge dans la figure 7),
qui fait cela. La mthode rapide consiste donner le nom de la classe et cocher la case tiquete public static void
main(String[] args) :

-9-

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Notez qu'eclipse critique notre dmarche, nous indiquant que l'emploi du package par dfaut (sans nom) est
dcourag. Cela ne fait rien, nous construisons ici une application de dbutant.
Eclipse cre alors un fichier source contenant une classe rudimentaire, correcte mais creuse, que vous n'avez plus
qu' complter pour en faire le programme voulu :

- 10 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Note. Lorsqu'un commentaire contient l'expresson TODO, eclipse affiche une marque bleue
dans la marge qui permet de se rendre rapidement cet endroit. C'est trs pratique pour
retrouver dans les gros fichiers ces commentaires qui signalent des morceaux en chantier.
Pour essayer votre programme vous allez taper le classique System.out.println("Bonjour
tous !"); l'intrieur de la fonction main. Au fur et mesure que vous tapez, remarquez
comment :

la vue Package Explorer montre les packages (rpertoires) qui composent votre projet, les classes que ces
paquetages contiennent, les membres de ces classes, etc. Bien entendu, double cliquer sur une de ces
entits vous positionne dessus dans le texte source ;
si vous marquez une pause lorsque vous tapez un point, eclipse vous montre la liste de ce que vous pouvez
taper ensuite ;
si vous laissez traner le curseur sur un identificateur, eclipse affiche la documentation correspondante ;
si vous faites une faute, eclipse vous la signale immdiatement et, dans le cas d'erreurs smantiques, vous
suggre des corrections ;
le simple fait de sauver le programme en provoque la compilation.

Pour excuter le programme, assurez-vous que la vue diteur contient une classe excutable (c'est--dire une classe
publique avec une mthode public static void main(String[] args);) et alors activez la commande Run as > Java
Application du menu attach au bouton cercl de rouge sur la figure 9 :

- 11 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

L'application s'excute et, si des sorties sont afficher, une vue Console apparat au-dessous de la vue diteur :

Notez que dans la vue Console il y a un bouton, cercl de rouge sur la figure 11, qui permet d'arrter une application
qui bouclerait indfiniment. Ce bouton est rouge quand l'application est vivante, gris (estomp) lorsque l'application
est morte.

- 12 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

VII - O sont mes fichiers sources ?


Cette question se pose par exemple lorsque, aprs avoir dvelopp une application dans eclipse, vous souhaitez
rcuprer vos fichiers sources pour les amener sur un autre systme, les compiler dans un autre environnement ou
tout simplement les ranger dans vos archives.
La rponse se trouve dans les figures 2 et 6 : si lors de la cration du projet vous avez laiss l'option par dfaut
Create new project in workspace (cf. figure 6) alors les fichiers sources, rangs dans des dossiers correspondant
aux packages, sont dans le dossier workspace, lui-mme plac l'endroit que vous avez indiqu au lancement
d'eclipse (cf. figure 2).

VIII - Comment amener dans eclipse des fichiers crs ailleurs ?


Deux cas possibles : ces fichiers forment dj un projet eclipse (par exemple cr sur un autre systme), ou bien il
ne s'agit que d'un ensemble de fichiers sources en vrac.

VIII-A - Vous avez dj un projet eclipse


Copiez le dossier du projet eclipse o vous voulez (par exemple dans le dossier workspace, mais ce n'est pas
une obligation), puis faites la commande File > Import... Ensuite, choisissez General puis Existing Projects into
Workspace. Le projet que vous venez d'importer apparat dans la fentre Package explorer, c'est termin.

VIII-B - Vous n'avez qu'un ensemble de fichiers sources Java


Prenez un projet qui existe dj, ou bien crez un noveau projet. Ensuite :

soit, l'aide de la commande File > Import... > General > File system, vous naviguez la recherche du(des)
fichier(s) en question et vous les importez dans ce projet ;
soit, plus simplement :

vous copiez les fichiers dans le dossier o sont les sources d'un des projets connus dans eclipse,

puis vous slectionnez ce projet dans la vue Package Explorer

et enfin vous excutez la commande File > Refresh.

IX - Dboguer les programmes


Un programme bogu est un programme qui ne donne pas les rsultats qu'il devrait. Dboguer un programme
c'est chercher les erreurs de programmation l'origine de tels dysfonctionnements. Pour aider le programmeur dans
cette recherche, eclipse offre un mode debug permettant, entre autres choses :

la pose de marques, appeles points d'arrt, sur des lignes du programme source, de telle manire que
l'excution s'arrtera lorsque ces instructions seront atteintes ;
lors de tels arrts, l'examen des valeurs qu'ont alors les variables locales et les membres des objets ;
partir de l, l'excution du programme pas pas (c'est--dire ligne ligne).

Pour dboguer simplement un programme, il suffit de poser un point d'arrt au dbut de l'endroit qu'on souhaite
examiner en dtail. Pour cela, il faut double-cliquer dans la marge, gauche de la ligne en question, ce qui fait
apparatre un disque bleu (cercl de rouge dans la figure 12) qui reprsente le point d'arrt.

- 13 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Il faut ensuite lancer le dbogage, l'aide du bouton gauche de celui qui lance l'excution, reprsentant une punaise
(bug) :

L'excution est alors lance et se droule normalement jusqu' atteindre le point d'arrt. Eclipse demande alors la
permission de changer de perspective (ensemble et disposition des vues montres) et adopte l'apparence de la
figure 14 :

- 14 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

La vue Debug, en haut gauche de la fentre, montre la pile d'excution, c'est--dire, pour chaque thread,
l'empilement des mthodes qui se sont mutuellement appeles (mthodes commences et non termines). Dans
la figure 14, par exemple, on attire notre attention sur la mthode Bidon.main, plus prcisment la ligne 8 du fichier
source, o a t appele la mthode Bidon.maxi, dans laquelle l'excution est arrete, la ligne 3.

En haut de cette vue (figure 15) se trouvent des boutons trs utiles. Parmi les principaux :

step over : faire avancer l'excution d'une ligne. Si cette dernire contient un appel de mthode, ne pas
dtailler l'activation de celle-ci, c'est--dire considrer l'appel comme une instruction indivisible ;
step into : avancer l'excution d'une ligne. Si un appel de mthode est concern, dtailler son activation,
c'est--dire aller dans la mthode et s'arrter sur sa premire ligne ;
step return : relancer l'excution normale, jusqu' la fin de la mthode dans laquelle on est arrt et le retour
la mthode qui a appel celle-ci ;
resume : relancer l'excution normale, jusqu' la fin du programme ou le prochain point d'arrt ;
terminate : terminer l'excution.

- 15 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

En haut et droite de la fentre principale se trouvent les vues Variables et Expressions. La premire affiche les
valeurs courantes des variables locales de la mthode en cours, la deuxime affiche les valeurs courantes des
expressions slectionnes avec la commande Watch (cliquer avec le bouton droit sur l'expression surveiller).
Le debogueur d'eclipse possde bien d'autres commandes trs puissantes, comme les points d'arrt conditionnels
et la possibilit de modifier les valeurs des variables du programme. Prenez un peu de temps pour les explorer,
c'est payant.

X - Le refactoring
Rusiner (refactor) un programme correct c'est modifier son texte source sans changer son fonctionnement et ses
rsultats. Par exemple, changer le nom d'une variable ou d'une mthode parce que, par suite de l'volution du
programme (ou du programmeur), le nom initialement choisi est devenu moins adapt ou expressif qu'un autre.
Le refactoring se traduit gnralement par des oprations globales, fastidieuses, qu'il n'est pas facile d'automatiser.
Heureusement eclipse offre de puissantes fonctions pour effectuer ce travail. Voici leur description, directement
traduite de l'aide en ligne du logiciel.
Commandes du menu Refactor

Rename

Nom

Description
Renomme l'lment selectionn et (si
activ) corrige toutes les rfrences
cet lment, y compris dans les autres
fichiers. Pour : mthodes, paramtres des
mthodes, champs (variables d'instance et
de classe), variables locales, types (classes,
interfaces, enums...), paramtres des types
(types gnriques), constantes des enum
(types numrations), units de compilation,
paquetages, dossiers sources, projets et toute
slection de texte qui renvoie un lment
d'un de ces types.

Pour : mthodes, paramtres des


mthodes, champs (variables
d'instance et de classe), variables
locales, types (classes, interfaces,
enums...), paramtres des types
(types gnriques), constantes des
enum (types numrations), units
de compilation, paquetages, dossiers
sources, projets et toute slection de
texte qui renvoie un lment d'un de
ces types.
Clavier : Alt + Shift + R
Options : le renommage d'un type
(classe, interface, enum...) permet
de renommer aussi les variables et
mthodes ayant des noms similaires.
Pour cela, cocher la case "Update
similarly named variables and
methods" du dialogue "Rename
Compilation Unit" qui apparat quand,
dans la vue "Package Explorer", on fait
clic-droit sur un nom de classe, puis

- 16 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Move

"Refactor" > "Rename..." Slectionner


"Configure..." pour choisir la stratgie
de reconnaissance des noms des
types. Le renommage d'un paquetage
permet celui de ses sous-paquetages.
Cocher la case "Rename subpackages"
dans le dialogue "Rename Package"
qui apparat quand, dans la vue
"Package Explorer", on fait clic-droit sur
un nom de paquetage, puis "Refactor"
> "Rename..." Cocher la case "Keep
original method as delegate to changed
method" pour garder la mthode
originale. De manire optionnelle,
vous pouvez rendre dsapprouver
(deprecate) l'ancienne mthode.
Dplace l'lment slectionn et (si activ)
corrige toutes les rfrences cet lment, y
compris dans les autres fichiers.

Change Method Signature

Pour : mthodes d'instance (qui


peuvent tre dplaces dans un
composant, comme une classe
interne), mthodes et variables de
classe, types, units de compilation,
paquetages, dossiers sources et
projets et toute slection de texte qui
renvoie un lment d'un de ces
types.

Clavier : Alt + Shift + V

Options : vous pouvez aussi initier cette


opration en faissant un traner &
dposer (Drag & Drop) dans la vue
"Package Explorer".
Change les noms des paramtres d'une
mthode, leur type, leur ordre et met jour
toutes les rfrences cette mthode. De
plus, des paramtres peuvent tre enlevs ou
ajouts et le type du rsultat et la visibilit de
la mthode peuvent tre modifis.

Extract Method

Pour : toute mthode et toute slection


de texte qui renvoie une mthode.

Clavier : Alt + Shift + C

Options : pour garder quand mme


la mthode originale (sous forme de
dlegation, c'est--dire rduite un
appel de la nouvelle mthode), cocher
la case "Keep original method as
delegate to changed method" dans le
dialogue "Change Method Signature".
Cre une nouvelle mthode contenant les
instructions ou expressions couramment
slectionnes et remplace la slection par
un appel de la nouvelle mthode. Cette
fonctionnalit est utile pour nettoyer les

- 17 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

mthodes trop longues,


excessivement complexes.

imbriques

ou

Extract Local Variable

Pour : une slection de texte qui peut


constituer le corps d'une mthode.
Vous pouvez utiliser "Expand Selection
to" du menu "Edit" afin d'obtenir une
slection valide.

Clavier : Alt + Shift + M


Cre une nouvelle variable initialise par
l'expression couramment slectionne et
remplace la slection par une rfrence
cette nouvelle variable.

Extract Constant

Pour : une slection de texte qui


constitue une expression (i.e. qui
dtermine une valeur). Vous pouvez
utiliser "Expand Selection to" du menu
"Edit" afin d'obtenir une slection
valide.

Clavier : Alt + Shift + L


Cre une variable statique finale initialise
avec l'expression couramment slectionne
et remplace cette expression par une
rfrence la variable cre. De manire
optionnelle, rcrit galement les autres
expressions o apparat l'expression extraite.

Inline

Pour : toute expression constante ou


slection de texte qui renvoie une
telle expression.
Dveloppe en ligne une variable locale,
une mthode ou un constante :

dans le cas d'une constante, cela


signifie que les occurrences de son
nom sont remplaces partout par
l'expression utilise pour initialiser
la variable (la dclaration de cette
dernire doit tre associe une
initialisation) ;
dans le cas d'une mthode, cela
signifie que ses appels sont remplacs
partout par le corps de la mthode,
aprs substitution textuelle des
paramtres formels par les paramtres
effectifs ;
dans le cas d'une constante, cela
signifie que les occurrences de son
nom sont remplaces partout par la
valeur de la constante.
Pour : variables locales, mthodes,
champs statiques finaux et toute
slection de texte qui renvoie une
mthode, un champ statique final ou
une variable locale.

- 18 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Convert Anonymous Class to Nested

Clavier : Alt + Shift + I


Convertit une classe interne anonyme en
une classe membre (c'est--dire une classe
interne nomme).

Convert Member Type to Top Level

Pour : expression dfinissant une


classe interne anonyme.
Cre une nouvelle unit de compilation
Java (c'est--dire un fichier source) pour
le type (classe, interface, enum...) interne
slectionn, en mettant jour toutes les
rfrences ncessaires.
Pour les types internes qui ne sont pas
statiques, un champ est ajout si ncessaire
pour permettre l'accs l'instance qui tait
prcdemment englobante. Pour comprendre
ce charabia, slectionnez ClasseInterne dans
l'exemple suivant, excutez la commande
"Refactor" > "Convert Member Type to Top
Level" et examinez le code produit.
public class ClasseEnglobante {
Object
membreDeClasseEnglobante;
class ClasseInterne {
void methodeDeClasseInterne() {
membreDeClasseEnglobante = 0;
}
}
}

Convert Local Variable to Field

Pour : type membre (classe, interface,


enum... interne) ou un texte qui renvoie
un tel type.
Convertit une variable locale en un champ
(c'est--dire une variable d'instance). Si
la variable est initialise lors de sa
dclaration, alors l'expression d'initialisation
est transporte soit dans la dclaration
du champ soit, si ncessaire, dans les
constructeurs de la classe.

Extract Superclass

Pour : toute slection de texte qui


renvoie une variable locale.
Extrait une super-classe commune un
ensemble de classes apparentes, lesquelles
deviennent alors des sous-classes directes du
la nouvelle super-classe.

Pour : tous types (classes, interfaces,


etc.).
Options : activez "Use the extracted
class where possible" pour utiliser la
classe nouvellement cre partout o

- 19 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Extract Interface

c'est possible. Voyez la rubrique Use


Supertype Where Possible.
Cre une nouvelle interface avec un
ensemble de mthodes, choisir parmi
les mthodes publiques de la classe, et
dclare la classe en question comme une
implmentation de l'interface nouvelle.

Use Supertype Where Possible

Pour : classes.
Options : activez "Use the extracted
class where possible" pour utiliser la
classe nouvellement cre partout o
c'est possible. Voyez la rubrique Use
Supertype Where Possible.
Remplace les occurrences d'un type par une
de ses super-classes aprs avoir identifi tous
les endroits o cela est possible.

Push Down

Pour : types (classes, interface, enum,


etc.).
Dplace un ensemble de mthodes et
variables d'instance d'une classe vers une de
ses sous-classes.

Pull Up

Pour : un ou plusieurs mthodes et


variables dclares dans la mme
classe ou dans une slection de texte
l'intrieur d'une variable ou mthodes.
Dplace vers une super-classe une variable
d'instance ou une mthode. Pour une
mthode, on a le choix entre dplacer
la mthode vers la super-classe, ou bien
dclarer dans cette dernire une mthode
abstraite.

Introduce Indirection

Pour : une ou plusieurs mthodes,


variables d'instance ou classes internes
dclares dans la mme classe ou
dans une slection de texte l'intrieur
d'une variable, d'une mthode ou d'une
classe interne.
Cre une mthode de classe (statique)
dlgant sa tche la mthode
d'instance slectionne. Par exemple, si
dans une classe UneClasse on a
slectionn une mthode de signature
resultat uneMethode(arguments) alors cette
commande cre une mthode static resultat
uneMethode(UneClasse unObjet, arguments)
dont le corps est rduit l'appel
unObjet.uneMethode(arguments).

Pour : une mthode ou une slection


de texte qui renvoie une mthode.
Options : activez "Redirect all method
invocations" pour remplacer tous
les appels de la mthode originale

- 20 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Introduce Factory

par des appels de la mthode cre


(x.uneMethode(y) sera remplac par
UneClasse.uneMethode(x, y)).
Cre
une
mthode

usine
(factory method) correspondant un
constructeur slectionn. C'est--dire si
on a slectionn un constructeur de
signature UneClasse(arguments), ajoute
une mthode telle que static UneClasse
createUneClasse(arguments) { return new
UneClasse(arguments); }.
De plus, remplace les expressions de la
forme new UneClasse(arguments) par des
expressions
UneClasse.createUneClasse(arguments).

Introduce Parameter Object

Pour : dclarations de constructeurs.


Remplace l'ensemble des paramtres d'une
fonction par un unique objet, instance d'une
classe nouvellement dfinie cet effet, dont
les variables d'instance sont les paramtres
originaux.

Introduce Parameter

Pour : une mthode ou une slection


de texte qui renvoie une mthode.

Options : activez "Keep original method


as delegate to changed method", dans
la bote de dialogue qu'ouvre cette
commande, pour conserver quandmme la mthode originale.
Remplace une expression par un argument
formel ajout la mthode o elle apparat et
met jour tous les appels de cette mthode
en leur ajoutant un nouveau paramtre effectif
qui n'est autre que l'expression en question.

Encapsulate Field

Pour : slections de texte qui


correspondent des expressions.
Remplace toutes les rfrences un champ
(variable d'instance) par des mthodes get
et set .

Generalize Declared Type

Pour : tout champ et toute slection de


texte qui renvoie un champ.
Permet de choisir un des super-types
(classes, interfaces) du type de la rfrence
couramment slectionne, en vrifiant qu'il
n'y aura pas de problme si le type de cette
dernire est chang vers le type slectionn ;
le changement est ensuite effectu.

- 21 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/

Installation et utilisation d'eclipse pour le dveloppement en Java par Henri Garreta

Infer Generic Type Arguments

Pour : dclarations de variables de


classe, d'instance ou locales, et
paramtres formels des mthodes.
Remplace les occurrences brutes de types
gnriques par des types paramtrs, aprs
avoir identifi tous les endroits o ce
remplacement est possible.

Migrate JAR File

Create Script

Apply Script

History

Pour : projets, paquetages et types.


Options:
"assume clone() returns an instance
of the receiver type" ( supposer que
clone() renvoie une instance du type
du destinataire ) : les classes bien
crites respectent gnralement cette
rgle mais, si vous souhaitez que votre
code la viole, ne cochez pas cette case.

"Leave unconstrained type arguments


raw (rather than inferring <?>)". Cochez
cette case si vous prfrez laisser bruts
les types non contraints, au lieu de leur
donner le paramtre joker <?>.
Met jour un fichier JAR appartenant au
build path d'un projet de votre espace
de travail (workspace) en essayant d'utiliser
l'information sur le refactoring effectu, afin
d'viter des erreurs provoques par ce
refactoring.

Pour : fichiers JAR du build path .


Cre un script avec les oprations
de refactoring qui ont t appliques dans
l'espace de travail (workspace). Ces scripts
peuvent tre enregistrs dans un fichier ou
bien copis dans le presse-papiers. Voyez
"Apply Script".

Pour : toujours possible.


Applique un script fait d'oprations de
refactoring aux projets de votre espace de
travail (workspace). Les scripts de refactoring
peuvent tre chargs depuis un fichier ou
bien depuis le presse-papiers. Voyez "Create
Script".

Pour : toujours possible.


Feuillette l'historique des refactorings en
permettant d'en effacer certains.

Pour : toujours possible.

- 22 -

Copyright 2009 Henri Garreta. Aucune reproduction, mme partielle, ne peut tre faite de ce site et de l'ensemble de son contenu : textes, documents,
images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu' trois ans de prison et jusqu' 300 000 de dommages et intrts.
http://henri-garreta.developpez.com/tutoriels/eclipse/installation-utilisation-eclipse-developpement-java/