🗒️ Notice − IntelliJ et Eclipse JDT
Durant les séances de TP il est conseillé d’utiliser un environnement de développement (IDE) adapté pour la programmation Java. Les salles de TP sont équipées avec des versions de IntelliJ et de Eclipse JEE.
Comme vu en cours, tous les projets étudiés seront des projets Maven, notamment pour la gestion des dépendances.
Ainsi, même si passer par un IDE est pratique pour le codage, mais il faudra toujours garder un terminal ouvert à côté pour exécuter les commandes Maven (mvn) nécessaires.
|
Si votre projet ne fonctionne pas correctement dans votre IDE, mais que tout va bien lors de l’exécution de Maven dans votre terminal (avec mvn test ou mvn package par exemple), alors rassurez-vous : votre projet va bien, mais votre IDE est simplement mal configuré.
Suivez les contenus de cette page pour tenter de résoudre le souci.
|
1. IntelliJ
1.1. Apparence d’un projet "sain"
Il peut rapidement arriver dans IntelliJ de ne pas correctement importer/configurer un projet Java Maven, ce qui empêche les outils de développement de bien fonctionner (l’autocomplétion, notamment).
Voici à quoi ressemble un projet Java Maven dans un état "sain" dans IntelliJ:
Les points importants à vérifier :
-
Il existe une ligne "External Librairies", ce qui montre bien que votre projet est de type "Java".
-
Le répertoire
src/main/javaapparaît en bleu, ce qui signifie que IntelliJ considère qu’on y trouve le code métier Java. -
Le répertoire
src/test/javaapparaît en vert, ce qui signifie que IntelliJ considère qu’on y trouve le code de test Java.
1.2. Importer correctement un projet Maven
Si vous souhaitez ajouter votre projet Maven existant à votre espace de travail IntelliJ :
-
Ouvrir un terminal, et faire un clone Git (
git clone) du projet dans votre espace utilisateur, -
Ouvrir IntelliJ, puis :
-
choisir "Open", se rendre dans le répertoire cloné par Git, et dérouler le contenu,
-
sélectionner le fichier
pom.xml, puis faire OK.
-
-
Choisir "Open as Project",
-
Choisir "Trust project".
1.3. Gérer ses "répertoires de sources"
Il peut arriver que les répertoires de sources de votre projet soient mal configurés (voir Section 1.1).
Cela peut notamment arriver lorsque vous créez manuellement le répertoire src/test/java.
Pour marquer manuellement un répertoire comme répertoire de sources :
-
Clic droit sur le répertoire,
-
Choisir "Mark directory as",
-
Choisir :
-
Sources Root pour le répertoire
src/main/java, -
Test Sources Root pour le répertoire
src/test/java.
-
1.4. Modification du pom.xml et reconnaissance des dépendances Maven
Lorsque vous modifiez le pom.xml, IntelliJ doit se mettre à jour avec le nouveau contenu.
Un pop-up apparaît alors comme ceci :
Il est important de toujours cliquer sur ce bouton pour que IntelliJ reste bien synchronisé.
Si malgré cela les dépendances sont mal reconnues par IntelliJ, faites un clic droit sur votre pom.xml et faites Unlink Maven Projects :
Puis refaites un clic-droit sur votre pom.xml et faites Add as Maven Project :
1.5. Configurer le Project SDK
Dans certains cas, IntelliJ n’est pas certain de savoir quelle installation disponible Java utiliser. On voit alors ce message :
Dans ce cas, il faut cliquer sur Setup SDK, puis deux possibilités :
-
Si IntelliJ vous propose un choix tout en haut de la liste, alors on peut normalement le prendre sans risque. Exemple :
-
Sinon, il faut prendre un SDK récent la sous-liste Detected SDKs. Exemple :
| Il ne faut surtout pas choisir l’action Download SDK, car cela occupera bien trop de place sur votre espace étudiant. |
2. Eclipse JEE
2.1. Gérer ses workspaces
Une particularité d’Eclipse est qu’il permet d’ouvrir simultanément plusieurs projets dans un seul et même espace appelé workspace. Chaque workspace est stocké dans un répertoire choisi par l’utilisateur⋅trice
La configuration d’un workspace se trouve dans un répertoire caché appelé .metadata, à l’intérieur du dossier du workspace.
|
Il peut être occasionnellement utile d’ouvrir plusieurs projets simultanément dans le même workspace cas (par exemple quand on utilise le système d’Eclipse pour gérer les dépendances entre projets). Cependant, il est grandement déconseillé de mélanger dans le même workspace Eclipse des projets qui n’ont rien à voir entre eux. En effet, non seulement cela ferait travailler Eclipse pour rien sur les projets non utilisés, mais il peut arriver qu’un projet influence la configuration ou l’état de tout le workspace, et aille donc compromettre le bon fonctionnement d’un projet voisin.
Ainsi, même si cela peut paraître lourd, il est fortement recommandé de créer un nouveau workspace Eclipse pour chaque TP !
Par exemple vous pouvez préparer un répertoire workspaces dans lequel mettre vos différents workspaces: workspaces/tp1_test, workspaces/tp2_test, etc.
|
Pour bien gérer ses workspaces, deux actions utiles :
-
Quand on ouvre Eclipse, on peut lui indiquer quel workspace utiliser.
-
Quand Eclipse est déjà ouvert, on peut faire File → Switch Workspace → Other pour réouvrir Eclipse dans un nouveau workspace.
| Ouvrir plusieurs projets dans IntelliJ est également possible, mais n’est pas le cas par défaut, et cela pose un peu moins de difficultés qu’Eclipse. |
2.2. Apparence d’un projet "sain"
Tout comme pour IntelliJ, il peut rapidement arriver dans Eclipse de ne pas correctement importer/configurer un projet Java Maven, ce qui empêche les outils de développement de bien fonctionner (l’autocomplétion, notamment).
Voici à quoi ressemble un projet Java Maven dans un état "sain" dans Eclipse :
Les points importants à vérifier :
-
Il existe une ligne JRE System Library et une ligne Maven Dependencies, ce qui signifie que le projet est bien de type Java et Maven.
-
Le répertoire
src/main/javaapparaît sur une ligne à lui, avec une petite icône (qui indique que c’est un répertoire de sources). -
Le répertoire
src/test/javaapparaît sur une ligne à lui, avec une petite icône, et une couleur verdâtre (qui indique que c’est un répertoire de sources contenant les tests).
2.3. Importer correctement un projet Maven
-
Ouvrir un terminal, et faire un clone Git (
git clone) du projet dans votre espace utilisateur, -
Ouvrir Eclipse, puis faire File → Import → Maven → Existing Maven Projects, et faire Next,
-
Browse, puis aller dans le répertoire du projet, et faire Ouvrir,
-
L’interface devrait afficher la détection réussie du fichier
pom.xmldu projet. Si oui, s’assurer que le fichier est coché, et faire Finish.
2.4. Gérer ses "répertoires de sources"
Tout comme pour IntelliJ, il peut arriver que les répertoires de sources de votre projet soient mal configurés (voir Section 2.2).
Cela peut notamment arriver lorsque vous créez manuellement le répertoire src/test/java.
Pour marquer manuellement un répertoire comme répertoire de sources :
-
Clic droit sur le projet, choisir Build Path → Configure Build Path,
-
Se rendre dans l’onglet Source,
-
Faire Add folder, et cocher le répertoire à ajouter (par exemple
src/test/java), puis faire OK. -
Si vous avez ajouté un répertoire pour les tests, toujours dans l’onglet Source, trouver l’entrée qui correspond au répertoire ajouté, puis :
-
Mettre Contains test sources à la valeur yes,
-
Mettre Output folder à la valeur
target/test-classes.
-