/ / Wie kann ich Maven Module von 2 verschiedenen Eltern erstellen? - Java, Feder, Maven, Spring-Boot, Modul

Wie kann ich Maven Module von 2 verschiedenen Eltern erstellen? - Java, Feder, Maven, Spring-Boot, Modul

Ich füge neues Maven Modul zum Projekt hinzu. Es wird Spring-Boot verwenden. Alte Module benutzen es nicht. Also, mein neues Modul muss Kind des Elternprojekts sein, aber gleichzeitig muss es ein Kind von Spring-Boot-Starter-Eltern sein. Wie kann ich mein Projektkind von 2 verschiedenen Elternteilen machen?

Mein derzeitiges Elternteil

<parent>
<groupId>com.somegroup</groupId>
<artifactId>Parent</artifactId>
<version>1.0</version>
</parent>

Spring-Boot-Elternteil

<parent>
<!-- Your own application should inherit from spring-boot-starter-parent -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
</parent>

Antworten:

2 für die Antwort № 1

Da das Maven-Projekt nur einen Elternteil haben kann, können Sie einen anderen Ansatz verwenden. Anstatt der Vererbung können Sie importieren spring-boot-dependencies in der Abhängigkeitsverwaltung und behalten Sie den ursprünglichen Elternteil.

<parent>
<groupId>com.somegroup</groupId>
<artifactId>Parent</artifactId>
<version>1.0</version>
</parent>

<dependencyManagement>
<dependencies>
<dependency>
<!-- Import dependency management from Spring Boot -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>1.5.1.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

Sie können über die Einschränkungen in lesen die offizielle Dokumentation, die im Wesentlichen die Art betreffen, wie Sie die Version von Abhängigkeiten ändern, die von Spring Boot bereitgestellt werden.


0 für die Antwort № 2

Sie müssen ein anderes Elternelement definieren, das zwischen Spring-Boot und Ihren eigenen Modulen sitzt. Beispiel:

<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.3.RELEASE</version>
</parent>

<groupId>com.greg</groupId>
<artifactId>myparent</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>

<modules>
<module>module1</module>
<module>module2</module>
</modules>

</project>