Maven Jenkins/maven - abhängige Projekte automatisch bauen

X

xhi2018

Gast
Hallo,

ich versuche aktuell noch testweise mit Jenkins 1.403 und maven 3.0.2 mehrere Java Projekte zu erstellen. Ich versuche mich aktuell noch in das Thema einzuarbeiten - also noch ein newbie... :rtfm:

Diese Java Projekte haben untereinander Abhängigkeiten - ungefähr so:
Code:
          core_Project
          /          \
    1a_Project     1b_Project
      |      \      /       |  
 2a_Project  2b_Project   2c_Project
                    \       /
                 3a_Project
In Jenkins hab ich die notwendigen maven Jobs angelegt. Die Projekte können auch einzeln, manuell und nacheinander gebaut werden. Soweit so gut.
Aber gibt es auch eine Möglichkeit die Module über Jenkins automatisch in der korrekten Abhängigkeitsreihenfolge bauen zu lassen..?

Also angenommen die abhängigen Module von
Code:
3a_Project
sind noch niemals gebaut worden und somit auch nicht über das maven Repository (maven-RepositoryManager und lokales maven-Repository) zu beziehen - sozusagen - build-from-scratch
Ich starte also den compile des Moduls
Code:
3a_Project
über Jenkins und aufgrund der Abhängigkeiten der Projekte werden die Projekte dann automatisch in dieser Reihenfolge über Jenkins/maven erstellt:
1.)
Code:
core_Project
2.)
Code:
1a_Project
und/oder
Code:
1b_Project
3.)
Code:
2b_Project
und/oder
Code:
2c_Project
4.)
Code:
3a_Project

Das Projekt
Code:
2a_Project
muss ich dann noch manuell bauen. Ich hoffe ich hab mich mit dem obigen Beispiel deutlich genug ausgedrückt, so dass jeder versteht was ich vor habe... ;)
Macht von Euch jemand schon so was in der Art, oder hat dergleichen schon mal versucht und könnte mir bitte einen Tipp geben wie ich das realisieren könnte..?

Bin für jeden Tipp dankbar!
 

kama

Top Contributor
Hi,

wenn die Projekte nicht in Form eines Multimodule Build zu bauen sind ist es am Einfachsten Up-Stream bzw. Downstream Abhängigkeiten zu definieren und somit eine Reihenfolge der Projekte festzulegen...

Gruß
Karl Heinz Marbaise
 
X

xhi2018

Gast
Hallo,

danke für Deine Antwort!
Verstehe ich dass dann richtig - ich habe Jenkins die Reihenfolge der zu bauenden Projekte über Up- bzw. Downstream Abhängigkeiten fest vorzugeben..?

Ich hatte gehofft, dass Jenkins in Tateinheit mit maven die Reihenfolge automatisch ermittelt und die Projekte dann so nacheinander baut. Hintergrund der Frage ist die Hoffnung, dass wenn neue Projekte bzw. Abhängigkeiten hinzukommen die Projekte dann automatisch immer in der richtigen Reihenfolge gebaut werden - scheint dann wohl nicht so zu sein. :(

Ich werd' wohl die Buildreihenfolge manuell vorgeben müssen oder hab ich Deine Antwort falsch verstanden ???:L

Das mit den fingerprints in Jenkins scheint mich - soweit ich es verstehe - nicht zu meinen gewünschten Ziel führen, oder..?

btw: Bei allen meinen Projekten handelt es sich um maven MultiModule Projekte.

Gruß und danke wenn Du noch ein paar Tipps oder Ideen hast ;)
 

kama

Top Contributor
Hallo,

btw: Bei allen meinen Projekten handelt es sich um maven MultiModule Projekte.
also ist der Baum den
Du aufgemalt hast ein Projekt bestehend aus mehreren Modulen?

also hast du eine Struktur wie folgt:

Code:
  + pom.xml
  +-- module-a
           +-- pom.xml
  +-- module-b
           +-- pom.xml
  +-- module-c
           +-- pom.xml
  +-- module-d
           +-- pom.xml
  ...
und Du baust mit Maven auf der obersten Ebene einfach per mvn clean package etc. ?
Wenn Ja brauchst Du nur ein Projekt vom Typ: Maven 2/3 anzulegen und dort zum auschecken die entsprechende URL anzugeben und dann sollte das Problem gelöst sein...
Ansonsten Poste mal einen Kleines Beispiel was ungefähr Deinem Layout entspricht hier...dann kann man mehr sagen...

Gruß
Karl Heinz Marbaise
 
X

xhi2018

Gast
Hallo,

danke nochmal für Deine Hilfe.
also ist der Baum den Du aufgemalt hast ein Projekt bestehend aus mehreren Modulen?
...
Ansonsten Poste mal einen Kleines Beispiel was ungefähr Deinem Layout entspricht hier...dann kann man mehr sagen...
meine Struktur sie wie folgt aus:
Code:
+ core_Project         |  + 1a_Project           |  + xn_Project        
  +--pom.xml           |    +--pom.xml           |    +--pom.xml       
  +-- module           |    +-- module           |    +-- module
      +-- pom.xml      |        +-- pom.xml      |        +-- pom.xml    
  +-- module           |    +-- module           |    +-- module
      +-- pom.xml      |        +-- pom.xml      |        +-- pom.xml    
  +-- module           |    +-- module           |    +-- module
      +-- pom.xml      |        +-- pom.xml      |        +-- pom.xml    
  ...                  |    ...                  |    ...
was ich damit aussagen will, ist folgendes. Jedes der oben im Baum abgebildeten Projekte ist ein eigenes "MultiModul" Projekt gemäß der von Dir aufgezeichneten Struktur. Das
Code:
core_Project
sowie die xx
Code:
_Project
haben eine
Code:
pom.xml
und darunter befinden sich wieder 1+x
Code:
pom.xml
für die Module in diesem xx
Code:
_Project

Die Module in den einzelnen xx
Code:
_Project
werden automatisch in der richtigen Reihenfolge gebaut. Nun wäre es für mich noch eine erhebliche Erleichterung wenn die einzelnen xx
Code:
_Project
auch noch automatisch in einer richtigen Reihenfolge über Jenkins/maven gebaut werden könnten.

danke schon mal für jeden Tipp und Hilfe! :)
 
X

xhi2018

Gast
Hallo,
Baut denn Maven die Module in der richtigen Reihenfolge?
ja das geht - bei einer Struktur die so aussieht:
Code:
project
  +-- pom.xml
  +-- module-a
           +-- pom.xml
  +-- module-b
           +-- pom.xml
  +-- module-c
           +-- pom.xml
  +-- module-d
           +-- pom.xml
und wenn die
Code:
dependencies
zwischen den
Code:
module-x
definiert sind, dann starte ich maven mit der Angabe der
Code:
project pom.xml
und maven baut die
Code:
module-x
in der richtigen Reihenfolge und danach dann noch das
Code:
project
.
 
M

maki

Gast
Die Module in den einzelnen xx_Project werden automatisch in der richtigen Reihenfolge gebaut. Nun wäre es für mich noch eine erhebliche Erleichterung wenn die einzelnen xx_Project auch noch automatisch in einer richtigen Reihenfolge über Jenkins/maven gebaut werden könnten.
Wenn die xx_Project Poms nur Dependencies auf einander haben aber keine Module eines Projektes sind, dann musst du das eben manuell über Up bzw. Downstream Projekte in Jenkins lösen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Jenkins keine Tests gefunden - aber in Maven Tools - Maven, Gradle, Ant & mehr 30
P Mit Maven einen spezifischen Branch nach Tag-Parameter erstellen (in Jenkins-Job) Tools - Maven, Gradle, Ant & mehr 3
H Jenkins - maven-jar-plugin - kein jar-file Tools - Maven, Gradle, Ant & mehr 38
G Maven Continious Integration mit Jenkins, Maven und Nexus - wie richtig? Tools - Maven, Gradle, Ant & mehr 1
K Jenkins Konfiguration für einen multi-module Maven Projekt Tools - Maven, Gradle, Ant & mehr 2
G Probleme Jenkins mit Maven einzurichten Tools - Maven, Gradle, Ant & mehr 4
L Jenkins Build mit git Hashwert Tools - Maven, Gradle, Ant & mehr 2
H Jenkins aktulles Checkstyle Plugin Tools - Maven, Gradle, Ant & mehr 2
OnDemand Jenkins Pipeline Build > Send Info Jira Tools - Maven, Gradle, Ant & mehr 3
H Nutzung einer eigenen checkstyle Konfiguration in Jenkins - Grundsätzliches Tools - Maven, Gradle, Ant & mehr 2
H Jenkins - Publish Coverage Report Tools - Maven, Gradle, Ant & mehr 19
H Maven Verbindung Java Projekt und Jenkins Build job Tools - Maven, Gradle, Ant & mehr 21
H Maven Bekomme cobertura in jenkins nicht zu laufen :-( Tools - Maven, Gradle, Ant & mehr 1
Thallius Jenkins -> git to zip? Tools - Maven, Gradle, Ant & mehr 5
Thallius Jenkins nur zip file erstellen? Tools - Maven, Gradle, Ant & mehr 3
B Jenkins Emal-Versand Tools - Maven, Gradle, Ant & mehr 5
K Subversion svn & Jenkins - Änderungen werden nicht angezeigt Tools - Maven, Gradle, Ant & mehr 4
Y Jenkins Zeitsteuerung Tools - Maven, Gradle, Ant & mehr 3
M Jenkins Rechte-Verwaltung Tools - Maven, Gradle, Ant & mehr 3
schalentier Probleme mit Jenkins Tools - Maven, Gradle, Ant & mehr 7
G Ant Hudson/Jenkins, Ant und JUnit unter einen Hut bringen Tools - Maven, Gradle, Ant & mehr 12
G Jenkins Userverwaltung Tools - Maven, Gradle, Ant & mehr 7
G Maven JMeter und Jenkins Tools - Maven, Gradle, Ant & mehr 1
G Jenkins Task starten Tools - Maven, Gradle, Ant & mehr 16
Oneixee5 Maven deploy - per SSH Tools - Maven, Gradle, Ant & mehr 6
H Maven kein Hauptmanifestattribut Tools - Maven, Gradle, Ant & mehr 10
M Programm mit Maven erstellen und starten samt Abhängigkeiten Tools - Maven, Gradle, Ant & mehr 27
D Interne Dependencies in Maven Tools - Maven, Gradle, Ant & mehr 51
J log4j2 mit Hibernate über Maven Tools - Maven, Gradle, Ant & mehr 10
thor_norsk Maven Build Failed: kann nicht von start.spring.io generiertes Projekt auf IntelliJ IDE starten Tools - Maven, Gradle, Ant & mehr 8
H Maven JUnit5 Tests werden ignoriert Tools - Maven, Gradle, Ant & mehr 5
thor_norsk Maven Tools - Maven, Gradle, Ant & mehr 32
ExceptionOfExpectation Maven Build Failed: kann nicht von start.spring.io generiertes Projekt auf Eclipse starten Tools - Maven, Gradle, Ant & mehr 20
Ich kann Maven nicht als UmgebungsVariable hinzufügen Tools - Maven, Gradle, Ant & mehr 2
F Maven JAR Plugin Probleme Tools - Maven, Gradle, Ant & mehr 4
W Was "braucht" man denn alles? Maven, Ant, Git, ... Tools - Maven, Gradle, Ant & mehr 21
N Fehler beim Imgui mit Maven Tools - Maven, Gradle, Ant & mehr 7
M Spring Boot Maven pom.xml-Eintrag Tools - Maven, Gradle, Ant & mehr 17
Encera JavaFX und Maven funktioniert nicht Tools - Maven, Gradle, Ant & mehr 1
B maven multi module Projekt und unnötige/zusätzliche Leerzeilen Tools - Maven, Gradle, Ant & mehr 4
J Maven Konfusion Tools - Maven, Gradle, Ant & mehr 7
Tippster Maven Sqlite integrieren (Eclipse, Maven) Tools - Maven, Gradle, Ant & mehr 4
T Image kreieren mit Maven bei JavaFX und nicht modularen Jars Tools - Maven, Gradle, Ant & mehr 12
T JSON Dependencies in Maven Tools - Maven, Gradle, Ant & mehr 7
T JavaFX, Jar über Maven kreieren Tools - Maven, Gradle, Ant & mehr 2
Encera Libraries Maven Projekt hinzufügen Tools - Maven, Gradle, Ant & mehr 9
Oneixee5 Maven Phase Tools - Maven, Gradle, Ant & mehr 3
Robertop maven copy-resources nicht in WAR Datei Tools - Maven, Gradle, Ant & mehr 2
T Maven: Probleme beim Einbinden der Dependencies Tools - Maven, Gradle, Ant & mehr 9
M Mit Maven eine jar Datei bauen ohne irgendeine main Methode Tools - Maven, Gradle, Ant & mehr 1
M Mit Maven eine jar Datei Bauen ohne irgendeine main Methode Tools - Maven, Gradle, Ant & mehr 18
H Maven Maven: <mainClass>NAME?</mainClass> Tools - Maven, Gradle, Ant & mehr 13
H Maven maven-source-plugin is missing Tools - Maven, Gradle, Ant & mehr 5
M Missing Artifact on selbst gehostestes Maven Paket Tools - Maven, Gradle, Ant & mehr 8
M Error code 409 maven Tools - Maven, Gradle, Ant & mehr 5
M github + maven Fehler beim repository erstellen Tools - Maven, Gradle, Ant & mehr 1
M durch Maven wird "var" nicht gefunden Tools - Maven, Gradle, Ant & mehr 4
N Maven Intellij Maven Projekt erstell keine src Tools - Maven, Gradle, Ant & mehr 4
LimDul Maven Einzelne Unit Tests in Maven Builds skippen Tools - Maven, Gradle, Ant & mehr 3
M Maven jpackage-image wird nicht gefunden Tools - Maven, Gradle, Ant & mehr 22
M javafx wird in einem alten programm nicht bei maven gefunden Tools - Maven, Gradle, Ant & mehr 15
L Maven IntelliJ, Maven und JavaFX + SceneBuilder Tools - Maven, Gradle, Ant & mehr 23
von Spotz Maven und Spring: "Add to classpath" ? Tools - Maven, Gradle, Ant & mehr 29
Kirby.exe Projekt mit Maven kompilieren Tools - Maven, Gradle, Ant & mehr 13
P Maven Projekt Abhängigkeiten auf bekante Schwachstellen prüfen Tools - Maven, Gradle, Ant & mehr 4
H Maven dependency Problem ? Tools - Maven, Gradle, Ant & mehr 23
B Maven und Intellij Tools - Maven, Gradle, Ant & mehr 24
P Maven Test werden nicht ausgeführt . Junit . Maven . Surefire . Eclipse Tools - Maven, Gradle, Ant & mehr 12
yakazuqi Maven Eigene API mit Maven einbinden Tools - Maven, Gradle, Ant & mehr 1
M Was ist besser für den Anfang, Maven oder Gradle? Tools - Maven, Gradle, Ant & mehr 6
P Maven Wie die Maven Project version in JSP page verwenden? Tools - Maven, Gradle, Ant & mehr 2
C Maven Multi-Module Projekt Tools - Maven, Gradle, Ant & mehr 2
T Maven Warnings/Fehlermeldungen Tools - Maven, Gradle, Ant & mehr 12
T Maven und Datenbank(treiber) Tools - Maven, Gradle, Ant & mehr 13
T Maven Runnable Jar Tools - Maven, Gradle, Ant & mehr 5
T Grundlagen Maven und Git/Github Tools - Maven, Gradle, Ant & mehr 2
LimDul Maven Maven Surefire Plugin - Warnings upgrade Tools - Maven, Gradle, Ant & mehr 2
G Maven upload Tools - Maven, Gradle, Ant & mehr 0
K Maven - Parent oder Dependency? Tools - Maven, Gradle, Ant & mehr 5
B Maven Maven deploy Tools - Maven, Gradle, Ant & mehr 4
P Nur einen Teilbaum in Maven releasen? Tools - Maven, Gradle, Ant & mehr 7
D Cannot invoke "javafx.scene.control.MenuButton.getScene()" nach konvertierung zu maven Tools - Maven, Gradle, Ant & mehr 3
H Maven - keine Durchführung von Tests Tools - Maven, Gradle, Ant & mehr 12
P JavaFX jar mit Maven Tools - Maven, Gradle, Ant & mehr 9
P Maven & Intellij Modul kann nicht aufgelöst werden Tools - Maven, Gradle, Ant & mehr 12
H Eclipse JUnit erzeugt Fehler im Maven-Test Tools - Maven, Gradle, Ant & mehr 1
H Maven Anfängerproblem - No plugin found for prefix 'archetype' in the current project and in the plugin groups Tools - Maven, Gradle, Ant & mehr 25
sascha-sphw Maven vs Gradle Tools - Maven, Gradle, Ant & mehr 24
D Maven Maven und die Build-Geschwindigkeit Tools - Maven, Gradle, Ant & mehr 11
K Maven IntelliJ + Maven + JavaFX Tools - Maven, Gradle, Ant & mehr 2
J Maven Mit Maven eine ZIP Datei erstellen Tools - Maven, Gradle, Ant & mehr 0
K Maven install schlägt fehl Tools - Maven, Gradle, Ant & mehr 10
I Problem: Maven import extern Lib Tools - Maven, Gradle, Ant & mehr 3
Tom299 Maven Maven funktioniert nach Installation nicht Tools - Maven, Gradle, Ant & mehr 1
I Maven Interface hinzugefügt - Error Tools - Maven, Gradle, Ant & mehr 1
M Verständnisfrage Maven Tools - Maven, Gradle, Ant & mehr 2
S Maven installieren - "Befehl wurde nicht gefunden" Tools - Maven, Gradle, Ant & mehr 1
E Maven: Wie Abhängigkeiten analysieren? Tools - Maven, Gradle, Ant & mehr 0
E Maven Maven distributionManagement Vererbung in child POM Tools - Maven, Gradle, Ant & mehr 8
P Maven Parent- Child POMs Tools - Maven, Gradle, Ant & mehr 13

Ähnliche Java Themen

Neue Themen


Oben