1

我为我们公司创建了一个超级 pom。这个超级 pom 设置了我们的网站目标,包括默认版权声明,以及我们使用的标准工具,如 PMD、Checkbugs、JavaDocs、CPD 和 JaCoCo。我们还在 jars 和 wars 中添加了额外的 META-INF 条目。

要使用这个超级 pom,我们在所有项目中都将它设置为父级:

<project>
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.veggiecorp</groupId>
        <aartifactId>super_pom</artifactId>
        <version>1.5</version>
    </parent>
    <groupId>com.veggiecorp</groupId>
    <artifactId>myproject</artifactId>
    <version>1.2.2</version>
    ....
 </project>

这对我们来说非常有效,直到一组项目开始使用 Spring Boot。使用 Spring Boot jar 的 Maven 项目需要 Spring Boot 父 pom:

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

    <groupId>com.veggiecorp</groupId>
    ....
</project>

Maven 项目不能有多个父 pom,而且我不知道我们可以使用哪种机制来使用我们的 Super Pom 和 Spring Boot 的父 pom,其中包含项目中使用的所有 jar 的版本号。

如何在同一个应用程序中同时包含我公司的超级 pom 和 Spring Boot 父 pom。

注意:有很多这样的 Spring Boot 应用程序,它们现在都是独立的项目。我不能轻易地将它们变成一个层次结构,其中它们有一个父 pom 有另一个父 pom。

做这个的最好方式是什么?

4

0 回答 0