Ich habe derzeit etwa 16 Projekte, die ich mit Maven, die auf dem gleichen Anwendungsserver, die sich so etwas wie ein "Portal". Ich habe einen Eltern-Pom erstellt, um häufige Abhängigkeiten und Plugin-Konfigurationen zu behandeln. Momentan sieht meine SVN-Struktur ähnlich aus:Multi-Modul Maven-Projekt mit Eltern Pom und Svn Layout
Die einzelnen Projekte werden jeweils separat bereitgestellt. Das heißt, Projekt1 hat keine Abhängigkeit von Projekt2 und jeder kann modifiziert und bereitgestellt werden, ohne dass etwas anderes geändert werden muss.
Dies stellt ein Problem mit SVN, als ob ein anderer Entwickler das gesamte "Portal" -Root auschecken wollte (um auch das Eltern-Pom zu erhalten), sie würden auch standardmäßig Kopien aller Tags und Zweige herunterziehen! Nicht wirklich ideal.
Das einzige, was ich denken kann, ist, so etwas zu verwenden:
portal_root
+tags
+branches
+trunk
+project1
+src
pom.xml
+project2
.
.
.
pom.xml
jedoch nun alle Projektänderungen werden in den Tags Ordner verfolgt werden. Das ist kein großes Problem für mich, aber Verzweigung scheint jetzt ein Schmerz zu werden.
Ich arbeite gerade daran, auch Teamcity einzubinden, was jetzt etwas einfacher wäre, da ich nur ein einziges Verzeichnis (z. B. Tags) sehen müsste, um alles zu erfassen, was gebaut werden muss. Ich stelle auch Artefakte in einem Nessus-Repository des Unternehmens bereit.
Ich hoffe, jemand könnte mir hier einige Vorschläge geben, wie ich keine anständige Dokumentation finden konnte, die hier über den gesamten Build-Lebenszyklus und Best Practices spricht.
Ich mag die Idee in der Lage zu sein, alle Projekte mit einem einzigen maven-Befehl zu erstellen und bereitzustellen. Ich mag auch alle gemeinsamen Abhängigkeiten, Repository-Informationen und Plugin-Informationen an einem Ort.
Das hat mein Problem perfekt gelöst! Vielen Dank! – Casey
Stellen Sie sicher, dass übergeordnete Daten als Abhängigkeit hinzugefügt werden, wenn Sie das übergeordnete Projekt im untergeordneten Projekt verwenden möchten. – cevaris