ich das Git Repository von Apache ActiveMQ Artemis Projekt (https://github.com/apache/activemq-artemis) kloniert und tippte dannMaven einrichten zu (anstelle des Herunterladens) zu kompilieren Abhängigkeiten
mvn -Ptests test -pl :integration-tests
Ich war überrascht zu sehen, Log-Meldungen wie die folgende
...
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
...
Seit z artemis-core-client
ist in dem Git-Repository enthalten, das ich am Anfang geklont habe, ich hätte erwartet, dass Maven es nur von dort erstellt.
Auf diese Weise, wenn ich Änderungen in der Haupt-Client-Quelle mache, werden sie von den Integrationstests abgeholt.
Stattdessen lädt Maven das Jar aus dem Repository.
Frage: Wie konfiguriere ich Maven, um immer alle Module zu erstellen, die sich im Git-Repository befinden und nur "wahre" Abhängigkeiten herunterladen, was ich meine Sachen nicht im Git-Repository?
Im Wesentlichen ist das gleiche wie diese Frage: http://stackoverflow.com/questions/33131880/maven-multi-modul-projekt-can not-find-sibling-modul Sie sollten Maven vom Root-Projekt aus starten und nicht direkt in einem Modul. Dies liegt daran, dass die Abhängigkeiten nicht installiert wurden, so dass Maven versucht, sie herunterzuladen. – Tunaki
@Tunaki Also das "-pl: integration-tests" ist, was Maven zum Herunterladen bringt, anstatt es zu kompilieren. Recht? Weil ich mvn in dem Verzeichnis laufen lasse, in dem die .pom Datei des Hauptprojekts ist. – user7610
Nein, im Hauptprojekt gibt es kein Integrationstest-Modul, überprüfe meine Antwort. Sie führen Maven im Test-/Hauptprojekt aus, nicht im Bibliotheks-/Hauptprojekt. –