Как я могу использовать свой собственный parent.pom вместо «spring-boot-starter-parent»? - PullRequest
0 голосов
/ 02 мая 2018

Я новичок в Spring, Spring boot и Spring boot starter.

Для своих разных приложений я использую собственный parent.pom для общего. Parent.pom содержит номера версий в качестве свойств и зависимостей, которые используют свойства в качестве номеров версий.

При использовании мой parent.pom maven заявляет, что я должен использовать «spring-boot-starter-parent».

Как я могу использовать свой собственный parent.pom вместо "spring-boot-starter-parent"?

Тем временем я поменял пом на это:

http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0

<groupId>com.websystique.springboot</groupId>
<artifactId>SpringBootRestApiExample</artifactId>
<version>1.0.0</version>
<name>SpringBootRestApiExample</name>

<parent>
    <groupId>my</groupId>
    <artifactId>parent</artifactId>
    <version>1.0-SNAPSHOT</version>
    <relativePath>../parent/pom.xml</relativePath>
</parent>

<properties>
    <java.version>1.8</java.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
        <type>pom</type>
        <scope>import</scope>
    </dependency>   
    <!-- Add typical dependencies for a web application -->
    <!-- Adds Tomcat and Spring MVC, along others -->
</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>2.0.1.RELEASE</version>
        </plugin>
    </plugins>
</build>

Но теперь я получаю это предупреждение:

dependencies.dependency.scope' for org.springframework.boot:spring-boot-starter-parent:pom must be one of [provided, compile, runtime, test, system] but is 'import'. @ line 27, column 1

Ответы [ 3 ]

0 голосов
/ 02 мая 2018

Также можно импортировать pom spring-boot-starter-parent. Таким образом, вы можете использовать свой собственный pom в качестве родителя и использовать управление зависимостями из весеннего загрузочного pom.

...
<dependencyManagement>
  <dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
        <scope>import</scope>
        <type>pom</type>
    </dependency>   
  </dependencies>
</dependencyManagement>

...

0 голосов
/ 12 октября 2018

Вы пробовали обновить файл setting.xml вашего pom?

<repository>
			<id>central</id>
			<url>https://repo.maven.apache.org/maven2</url>
			<releases>
				<enabled>true</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
</repository>
0 голосов
/ 02 мая 2018

Вы не должны использовать spring-boot-starter-parent, просто у него есть обширный раздел dependencyManagement, который гарантирует, что все зависимости Spring Boot, которые вы используете в дочерних проектах, имеют взаимно совместимые версии.

Обычно я объявляю spring-boot-starter-parent как родительский POM моего родительского POM . Таким образом, вы получаете лучшее из обоих вариантов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...