Ich versuche, Maven Plugin-Management für ein Multi-Modul-Projekt einzurichten. Meine Projektstruktur sieht so etwas wie dieseMaven pluginManagement mehrere Elternteile
base_project
-- pom.xml
-- projectA
-- pom.xml
-- projectB
-- pom.xml
-- projectC
-- pom.xml
-- project D
-- pom.xml
Im pom.xml des Basisprojektes, ich ein Plugin in PluginManagement
<pluginManagement>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</pluginManagement>
Ich mag projectA das pluginManagement erbt definiert haben, so dass ich verwenden können, das Plugin in ProjektB und ProjektC. Ich möchte, dass wenn ich base_project baue, das Plugin nur für projectB, projectC und projectD und nicht für projectA laufen soll. projectA sollte nur das pluginManagement von base_project erben. Ich habe versucht, zwei Arten von Setup aber kein Glück
Setup 1
Mit dieser Einrichtung Feder-boot-Maven-Plugin laufen does't wenn ProjectB oder ProjectC bauen bekommt
projectA pom.xml sieht aus wie
<pluginManagement>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</pluginManagement>
während ProjectB und ProjectC pom.xml wie
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
sieht
Setup 2
Mit dieser Einrichtung Feder-boot-Maven-Plugin läuft auch gegen projectA.
projectA pom.xml sieht aus wie
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
während ProjectB und ProjectC pom.xml sieht aus wie
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
1- Welches Ziel versuchen Sie auszuführen? 2 - werfen Sie einen Blick auf die effektive Pom Ihres Kindes Pom es wird zeigen, wie Ihre Pom wirklich aussehen [Hilfe: effektive Pom] –
Hat es funktioniert. Wir müssen das Plugin nicht in pom.xml von ProjectA definieren. Wir können es direkt in Kinderpom verwenden. – krajwade