web-dev-qa-db-fra.com

Dans Eclipse m2e, comment référencer un projet d'espace de travail?

Comment référencer un autre projet d'espace de travail à l'aide de Eclipse m2e

Dois-je ajouter une dépendance de projet dans les paramètres du projet? Mais dans ce cas, la dépendance n’est pas indiquée dans le pom.

Si je les mets dans le pom, le projet ne sera pas référencé dans l'espace de travail, mais le fichier jar du référentiel local. Assez ennuyeux, n'importe qui peut aider? 

27
Wudong

La bonne façon de faire est la suivante:

  • Utilisez exclusivement la section des dépendances du fichier POM, ne modifiez pas les références du projet Eclipse. Cliquez avec le bouton droit sur le projet, puis sélectionnez Maven> Mettre à jour la configuration du projet pour réinitialiser le projet aux paramètres par défaut de Maven. De cette façon, m2e a la propriété des dépendances.
  • Assurez-vous que tous les projets référencés sont ouverts dans Eclipse et que le Maven nature est activé.
  • Vérifiez les paramètres Maven de chaque projet et assurez-vous que groupId , artifactId et version correspond aux projets que vous avez ouverts dans Eclipse. Donc, si le projet dont vous dépendez a la version 1.0.0-SNAPSHOT dans Eclipse, assurez-vous que le fichier POM du projet dépend de la version 1.0.0-SNAPSHOT dans la section dependencies .
  • Activer Résolution de l’espace de travail pour chacun des projets. Cliquez avec le bouton droit sur le projet, puis sur Maven> Activer la résolution de l'espace de travail .
  • Enfin, si les projets ne sont toujours pas résolus, cliquez à nouveau sur le projet avec le bouton droit de la souris, puis Maven> Mettre à jour le projet

Cela devrait résoudre votre problème. Si, après cela, vos dépendances sont toujours référencées à partir du système de fichiers, vérifiez à nouveau le groupId , artifactId et surtout version de chaque dépendance.

Vérifiez également que votre projet ne contient aucune erreur. Essayez d’exécuter l’installation de Maven.

55
nwinkler

J'irais même plus loin que cela… .. Si vous avez jamais exécuté mvn Eclipse:eclipse sur votre projet, vous êtes probablement en difficulté. Dans mon projet Eclipse, j'avais à la fois une section "Bibliothèques référencées" et une section "Maven Dependencies", avec des versions en conflit de bibliothèques, ce qui provoquait une confusion inévitable entre Eclipse et moi-même.

La chose la plus sûre que j'ai trouvée est d'exécuter mvn Eclipse:clean à partir de la ligne de commande, puis de revenir dans Eclipse, d'actualiser le projet, "OK" dans la boîte de dialogue relative à l'incident résultant, puis d'aller à Maven> Update Project. Cela a réglé le tout pour moi.

6
Huw Roberts

Lorsque Eclipse est impliqué dans l'importation et la suppression de plusieurs projets, vous devrez peut-être reconstruire l'index des référentiels maven. Voici une façon que j'ai faite.

  1. Vérifiez si un projet référencé est correctement reconnu par Eclipse en tant que projet maven.

    Dans la barre de menus, cliquez sur Window -> Show View -> Other...
    Lorsque la fenêtre 'Show View' apparaît, sélectionnez Maven -> Maven Repositories
    Dans la fenêtre Référentiels Maven, votre projet devrait apparaître sous forme de fichier jar dans Local Repositories -> Workspace Projects
    Si vous ne trouvez pas votre projet dans Workspace Projects, cliquez avec le bouton droit sur Workspace Projects et sélectionnez Rebuild Index.

  2. Mise à jour d'un projet de référencement

    Faites un clic droit sur le projet de référencement, Maven -> Update Project... -> OK

4
heemin

Vous devez également vous assurer que vous utilisez les objectifs corrects. 

Si vous n'exécutez pas l'objectif install, il ne sera pas copié dans votre référentiel et ne sera pas compilé. 

Pour en savoir plus sur les objectifs, consultez https://maven.Apache.org/guides/introduction/introduction-to-the-lifecycle.html

0
Clare McLennan