Je cloné le dépôt git du projet Artemis Apache ActiveMQ (https://github.com/apache/activemq-artemis) puis dactylographiéMise en place maven pour compiler (au lieu de le téléchargement) de dépendance
mvn -Ptests test -pl :integration-tests
J'ai été surpris de voir des messages de journal comme le
suivant...
Downloading: http://repository.apache.org/snapshots/org/apache/activemq/artemis-selector/1.4.0-SNAPSHOT/artemis-selector-1.4.0-20160625.030221-11.jar
Downloading: http://repository.apache.org/snapshots/org/apache/activemq/artemis-core-client/1.4.0-SNAPSHOT/artemis-core-client-1.4.0-20160625.030211-11.jar
...
Depuis par exemple artemis-core-client
est contenu dans le dépôt git que j'ai cloné au début, je m'attendais à ce que maven le construise à partir de là. De cette façon, lorsque je fais des changements dans la source du client principal, ils sont détectés par les tests d'intégration. À la place, maven télécharge le fichier jar à partir du référentiel.
Question: Comment configurer maven pour toujours construire tous les modules qui se trouvent dans le dépôt git et télécharger uniquement les dépendances "vrai", ce que je veux dire les choses qui ne sont pas dans le dépôt git?
Essentiellement, il est le même que cette question: http://stackoverflow.com/questions/33131880/maven-multi-module-project-can-not-find-sibling-module Vous devez lancer Maven depuis le projet racine et non directement dans un module. C'est parce que les dépendances n'ont pas été installées, donc Maven essaie de les télécharger. – Tunaki
@Tunaki Donc, le "-pl: integration-tests" est ce qui provoque le téléchargement de maven, au lieu de compiler. Droite? Parce que je cours mvn dans le répertoire où est le projet principal .pom. – user7610
Non, il n'y a pas de module d'intégration-tests dans le projet principal, vérifiez ma réponse. Vous exécutez maven sur le projet test/main, pas sur le projet library/main. –