Comment configurer Eclipse build path pour utiliser les dépendances Maven?
Je voudrais profiter des fonctionnalités fournies par Maven pour gérer les dépendances dans un projet. Ma brève compréhension du fonctionnement de Maven est qu'il va acquérir les pots nécessaires et ensuite construire le projet avec ces bibliothèques.
Actuellement, j'ai un simple fichier POM mis en place comme un test:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.jamesgoodwin.test</groupId>
<artifactId>com.jamesgoodwin.test</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
</build>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.0.0.RELEASE</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
Habituellement, lors de la gestion des dépendances pour un projet, j'ajouterais le projet ou le JAR au chemin de construction du projet, puis je pourrais construire mon projet..
Mais quand en utilisant M2Eclipse, les dépendances ne sont pas automatiquement ajoutées au chemin de construction. Y a-t-il quelque part où je dois configurer cela pour permettre à Eclipse de savoir que Maven gère les dépendances?
18 réponses
Si vous cliquez avec le bouton droit sur votre projet, il devrait y avoir une option sous "maven" pour "activer la gestion des dépendances". C'est tout.
Si vous exécutez
mvn eclipse:clean
Suivi de
mvn eclipse:eclipse
Si préparera le fichier eclipse .classpath
pour vous. Autrement dit, ces commandes sont exécutées sur maven à partir de la ligne de commande, c'est-à-dire en dehors d'eclipse.
Je suppose que vous utilisez m2eclipse comme vous l'avez mentionné. Cependant, il n'est pas clair si vous avez créé votre projet sous Eclipse ou non, alors je vais essayer de couvrir tous les cas.
Si vous avez créé un projet "Java" sous Eclipse (Ctrl + N > projet Java), alors cliquez avec le bouton droit sur le projet dans la vue Explorateur de paquets et allez dans Maven > activer la gestion des dépendances (selon la structure initiale du projet, vous pouvez le modifier pour correspondre à celui du maven, par exemple en ajoutant
src/java
aux dossiers source sur le chemin de construction).Si vous avez créé un" projet Maven "sous Eclipse (Ctrl + N > projet Maven), alors il devrait être déjà "Maven ready".
Si vous avez créé un projet Maven en dehors D'Eclipse (manuellement ou avec un archétype), il vous suffit de importer dans Eclipse (cliquez avec le bouton droit sur la vue Explorateur de paquets et sélectionnez importer... > Projets Maven) et ce sera "Maven prêt".
Maintenant, pour ajouter une dépendance, soit cliquez-droit sur le projet et sélectionnez Maven > Ajouter Dépendance) ou de modifier le pom manuellement.
PS: évitez d'utiliser le maven-eclipse-plugin si vous utilisez m2eclipse. Il n'y a absolument pas besoin de cela, il sera déroutant, il va générer un certain désordre. Non, vraiment, ne l'utilisez pas à moins que vous ne sachiez vraiment ce que vous faites.
Cliquez-Droit sur le projet de Configurer > convertir en projet Maven
Ensuite, vous pouvez voir tout le Menu lié à Maven pour votre projet.
Ajoutez ceci à .fichier classpath ..
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
Thx
J'ai aimé ça..
Faites un clic droit sur le projet - > configurer- > convertir en projet maven. Clic droit sur le projet - >maven-->ajouter des dépendances.
Dans Eclipse (Mars) aller à:
Propriétés Du Projet -- > Maven. Assurez-vous que "résoudre les dépendances des projets d'espace de travail" est désactivé .
Je n'ai pas trouvé les menus maven ou configure mais j'ai trouvé le bouton Suivant qui a résolu mon problème:
Lorsque m2eclipse est installé correctement, il doit ajouter automatiquement des dépendances. Cependant, vous devez générer les fichiers de projet eclipse en entrant:
mvn eclipse:m2eclipse
Ou, sinon, si vous n'utilisez pas m2eclipse:
mvn eclipse:eclipse
J'ai eu une légère variation qui a causé quelques problèmes - plusieurs sous-projets au sein d'un projet. Dans ce cas, je devais aller dans chaque dossier individuel contenant un POM, exécuter la commande mvn eclipse:eclipse, puis copier/fusionner manuellement les entrées classpath dans mon fichier CLASSPATH de projet.
Ajouter mes réponses pour quelques raisons:
- D'une manière ou d'une autre, aucune des réponses listées n'a directement résolu mon problème.
- Je n'ai pas trouvé "activer la gestion des dépendances" sous Maven. J'utilise Eclipse 4.4.2 build on Wed, 4 Feb 2015.
Ce qui m'a aidé était une autre option sous Maven appelée "Update Project" et puis quand je clique dessus cette fenêtre s'ouvre qui a une case à cocher qui dit "forcer la mise à jour de L'instantané/des versions". Le but réel de cette case à cocher est différent je sais mais en quelque sorte il a résolu le problème des dépendances.
Peut-être que vous pourriez regarder dans Maven-eclipse-plugin au lieu de M2Eclipse.
Là, vous ajoutez essentiellement la configuration Maven-eclipse-plugin à votre pom.xml, puis exécutez mvn eclipse:eclipse
qui générera les fichiers .project
et .classpath
requis pour Eclipse. Ensuite, vous aurez le chemin de construction correct dans Eclipse.
Pour les nouvelles versions D'Eclipse (>=Mars) faites un clic droit sur projet > configurer > convertir en projet Maven
Assurez-vous que votre POM suit la convention de nommage, et est nommé en lettres minuscules comme pom.xml
et non POM.xml
.
Dans mon cas, tout avait raison, mais Eclipse se plaignait toujours en essayant de faire un clic droit et Update project configuration
- m'a dit que le POM ne pouvait pas être lu. Changé le nom en minuscules - pom.xml
de POM.xml
- et cela a fonctionné.
J'ai rencontré ce problème aussi. Lorsque j'ajoute des dépendances dans le pom.xml
, j'ai vérifié dans le dossier local /Users/xyz/.m2/
et les fichiers JAR sont déjà téléchargés, mais je ne peux pas ajouter le buildpath de l'eclipse.
MA version eclipse: Mars.2 libération (4.5.2)
cliquez-droit sur le projet > Maven > Activer l'espace de travail de Résolution de
Et cela a résolu mon problème.
Généralement, vous pouvez copier le .classpath fichier d'un projet de travail car il n'y a rien de spécifique au projet ici en supposant que vous êtes structuré comme un projet Maven standard.
Cela a fonctionné pour moi dans Eclipse Oxygène (4.7.0):
Faites un clic droit sur projet - > Maven - > sélectionnez les profils Maven... ensuite, cochez la case proxy du référentiel, appuyez sur OK.
Rien de tout cela n'a résolu mon problème. mais ce que j'ai fait était si cliquez sur le pom.xml, il y a un onglet en bas nommé dépendances. dans cet onglet, il est divisé en 2 sections, l'une appelée dépendances et l'autre appelée gestion des dépendances. sélectionnez chaque chose dans la section dépendance et cliquez sur Ajouter pour être sous le contrôle de gestion des dépendances. fermez et rouvrez votre projet.