2016-10-03 3 views
0

Ich muss eine Multi-Projekt-Build von Maven zu Gradle migrieren und pflegen die Art und Weise Inter-Projekt Abhängigkeiten und Build-Auftrag arbeiten. Ich möchte das Maven-Plugin in Gradle verwenden und weiterhin Artefakte sowohl in lokalen als auch in entfernten Maven-Repositories veröffentlichen.Gradle Multi-Projekt-Build - Projekt Abhängigkeiten und Build-Reihenfolge

Die Struktur Multi-Projekt ist in etwa so:

root/
--project-A/
---- Projekt-A1/
---- Projekt-A2/
- -project-B/
---- Projekt-B1/
---- Projekt-B2/

In maven Projekt-A2 eine Abhängigkeit von Projekt-A1 hat. Wenn ich mvn install_ aus dem Project-A2-Verzeichnis starte, wird nur dieses Projekt erstellt/installiert und seine Abhängigkeit von Project-A1 vom lokalen/remote maven-Repository abgerufen. Wenn ich mvn install von Project-A aus starte, werden sowohl Project-A1 als auch A2 erstellt/installiert und die Build-Reihenfolge basierend auf der oben genannten Abhängigkeit berechnet. Wie kann dieses gleiche Verhalten in Großbuchstaben erreicht werden?

Außerdem ist Projekt-B2 von Projekt-A2 abhängig. Wenn ich mvn install von den Verzeichnissen Projekt-B2 oder Projekt-B ausführe, sollte diese Abhängigkeit vom lokalen/entfernten Maven-Repository übernommen werden. Wenn ich mvn install vom Stammverzeichnis aus starte, sollte es die Erstellungsreihenfolge so berechnen, dass Project-A1 erstellt, Project-A2 erstellt und dann _Project-B2 erstellt.

Antwort

0

Diese Build-Reihenfolge, soweit ich weiß, ist mit Gradle nicht genau möglich. Wenn du A2 und A1 gebaut hast, wird Gradle A1 bauen. Wenn A1 nicht geändert wurde, wird es nicht erstellt. Gleiches gilt für das zweite Szenario.

Verwandte Themen