Comment append la bibliothèque «Maven Managed Dependencies» dans l’éclipse du chemin de compilation?

J’ai créé un projet Maven et je souhaite append toutes les dépendances Maven dans le chemin de construction du projet dans Eclipse . Lorsque je vais dans Java Build Path> Ajouter une bibliothèque> Maven Managed Dependency> Suivant dans la boîte de dialog de propriétés du projet, il me demande d’utiliser “Maven Project Setting” pour configurer la résolution de dépendances Maven.

Ma question est de savoir comment append des dépendances maven dans le chemin de construction actuel?

à partir du type de ligne de commande:

 mvn eclipse:eclipse 

cela va append toutes les dépendances que vous avez dans votre pom.xml dans eclipse …

Cependant, si vous n’avez rien fait avant de devoir faire une autre étape, une seule fois.

Fermez eclipse, puis exécutez la commande suivante à partir du shell:

 mvn -Declipse.workspace= eclipse:add-maven-repo 

échantillon:

 mvn -Declipse.workspace=/home/ft/workspaces/wksp1/ eclipse:add-maven-repo 

Si vous avez m2e installé et que le projet est déjà un projet Maven mais que les dépendances Maven sont toujours manquantes, la manière la plus simple de travailler pour moi était

  • clic droit sur le projet,
  • Maven,
  • Projet de mise à jour …

Eclipse capture d'écran

J’ai le même problème avec SpringSource Tool Suite. J’importais un projet Maven existant qui fonctionnait bien depuis la ligne de commande. Cependant, lorsque j’ai importé le projet en utilisant import -> Maven -> projet Maven existant, le projet n’a pas importé correctement et je n’ai pas pu append la bibliothèque de dépendances gérées maven au chemin de génération.

Si j’ai lancé mvn install à partir de la ligne de commande, le projet a réussi. Si j’ai lancé mvn eclipse: eclipse puis importé dans STS, tout fonctionnait comme prévu, sauf bien sûr que je devais le relancer chaque fois que je mettais à jour le pom, ce qui était indésirable.

Je l’ai contourné en lançant mvn eclipse:eclipse puis en mettant à jour manuellement .classpath pour éliminer les dépendances M2_REPO ajoutées par eclipse:eclipse et en ajoutant l’entrée de dépendance m2eclipse:

      

Ensuite, j’ai importé le projet Maven existant et cela a fonctionné comme prévu.

Ceci est un hack et je ne suis pas sûr des autres conséquences de l’ eclipse:ecplise a quand on travaille avec m2eclipse. Mais cela m’a au moins permis de comstackr mon projet pour que je puisse passer au codage.


EDIT 04/01/2013

La solution de contournement que j’ai décrite ci-dessus fonctionnera temporairement et je n’ai jamais découvert d’effets secondaires négatifs. Cependant, j’ai eu ce problème quelques fois maintenant et à chaque fois, le problème est qu’il y a une partie du pom que maven accepte mais que m2eclipse ouvre.

Je recommande donc de supprimer des parties du pom 1 par 1 jusqu’à ce que vous puissiez améliorer le projet avec succès. Il suffit de continuer à exécuter maven -> update configuration après chaque modification de pom jusqu’à ce qu’elle fonctionne correctement. Je commence généralement par supprimer les blocs de balises de configuration du plug-in, en commençant par les plus suspects (c’est-à-dire les plus compliqués).

Une fois qu’il se dilate correctement, vous pouvez inverser le pom et il devrait toujours fonctionner comme prévu.

Après avoir démarré, je recherchais la (les) configuration (s) incriminée (s) pour essayer de déterminer le correctif (selon m2eclipse, de toute façon).

Espérons que cette approche mène à la solution permanente au lieu de se contenter d’une solution de contournement!

Assurez-vous que votre stratégie d’emballage définie dans votre fichier pom.xml n’est pas “pom”. Ce devrait être “pot” ou autre chose. Une fois que vous faites cela, mettez à jour votre projet en cliquant dessus avec le bouton droit de la souris et accédez à Maven -> Update Project …

  • Installez le plug-in M2E.
  • Faites un clic droit sur votre projet et sélectionnez Configurer -> Convertir en projet Maven.

entrer la description de l'image ici

  • Ensuite, un fichier pom.xml apparaîtra dans votre projet. Double-cliquez sur le fichier pom.xml, sélectionnez l’onglet Dépendances pour append les fichiers jar dont votre projet dépend.

Vous pouvez installer M2Eclipse et ouvrir le projet en tant que projet maven dans Eclipse. Il créera la configuration et les entrées nécessaires.

Ceci est également utile pour les mises à jour ultérieures du pom. Avec le plugin maven eclipse, vous devrez régénérer manuellement la configuration de l’éclipse pour chaque modification.

Je pourrais comprendre le problème. Je devais suivre l’avertissement au démarrage de l’éclipse.

 The Maven Integration requires that Eclipse be running in a JDK, because a number of Maven core plugins are using jars from the JDk. Please make sure the -vm option in eclipse.ini is pointing to a JDK and verify that Installed JRE's are also using JDK installs 

J’ai changé le fichier eclipse.ini et ajouté le suivi et le redémarrage de l’éclipse

 -vm C:/Program Files/java/jdk1.6.0_21/bin/javaw.exe 

Maintenant, je peux voir la bibliothèque “Maven Dependency” incluse automatiquement dans le chemin de compilation java.

Si Maven-> Update Project ne fonctionne pas pour vous? Ce sont les étapes que je suis religieusement. Supprimez le projet d’eclipse (ne le supprimez pas de l’espace de travail) Fermez Eclipse allez sur la ligne de commande et exécutez ces commandes.

 mvn eclipse:clean mvn eclipse:eclipse -Dwtpversion=2.0 

Ouvrez Eclipse importez le projet Maven existant. Vous verrez la dépendance de maven dans notre projet.

J’espère que cela fonctionne.

Suivez ces étapes

1) Aller dans le chemin des classes de projets

2) Allez dans l’onglet bibliothèque

3) cliquez sur Ajouter une bibliothèque

4) Dans la boîte de dialog ouverte, sélectionnez Maven Managed Dependencies.

5) Cliquez sur Next

6) Dans le nouveau dialog, cliquez sur Gérer les parameters du projet.

7) Dans la boîte de dialog ouverte, cochez la case Résoudre les dépendances de l’espace de travail

8) Cliquez sur Restaurer les parameters par défaut

9) Il va faire un certain processus et vous aurez toutes vos dépendances dans votre bibliothèque maintenant.

Si vous utilisez un plugin eclipse pour faire vos tâches de maven (il y en a 2: M2ecipse de sonatype le ‘officiel’ et q4e sur Google Code) alors, il y a des options dans les menus contextuels (clic droit sur le projet) à faire que sans douleur.

Vous pouvez avoir les deux plug-ins exécutés en même temps dans votre eclipse et les utiliser indifféremment par projet.

Essayez: Faites un clic droit sur votre projet-> Maven-> Désactiver la gestion des dépendances. Et réactivez la gestion des dépendances.

Vous pouvez également envisager de maven-dependency-plugin sur votre pom:

  ...  maven-dependency-plugin   process-resources  copy-dependencies   ${project.build.directory}/lib     ...  

Vous pouvez alors exécuter “mvn package” et maven copiera toutes les dépendances nécessaires dans le répertoire / chemin_projet / votre_nom_projet / WEB-INF / lib /. À partir de là, vous pouvez les copier dans votre répertoire projet / lib et append des jars externes (en configurant les parameters de votre projet buildpath)

Si vous avez supprimé la dépendance Maven de la bibliothèque accidentellement. Ajouter ci-dessous dans pom.xml

    maven-comstackr-plugin 3.3  1.7 1.7