Maven:从不同的pom导入pom属性

时间:2015-07-10 13:58:06

标签: maven dependency-properties

我想将项目X pom文件中的属性导入我的项目Y pom,例如库版本。我不想让项目X成为项目的父项。

我尝试将项目Xs pom作为导入包含在依赖关系管理部分中。

<dependency>
                <groupId>abc</groupId>
                <artifactId>def</artifactId>
                <version>1.1</version>
                <type>pom</type>
                <scope>import</scope>
</dependency>

请指教。 感谢。

2 个答案:

答案 0 :(得分:0)

不使用父POM共享依赖版本的常用方法是BOM。

这些是单独的项目,仅包含由pom.xml组成的<dependencyManagement>。然后可以使用<scope>import</scope>将其导入其他几个项目。

然后,其他项目将BOM表中的依赖项管理导入。

答案 1 :(得分:-2)

基本上,您需要创建由两个项目导入的父pom。

  1. 父级有一个<dependencyManagement>部分,其中列出了groupId,artifactId和version
  2. 子pom只需要列出groupId和artifactId,因为该版本是从父级的<dependencyManagement>部分继承而来的
  3. 例如:

    root/pom.xml - Builds all modules, a simple pom with a `<modules>` section which includes parent, project1 and project2
    root/parent/pom.xml - This has a `<dependencyManagement>` section
    root/project1/pom.xml - parent=../parent/pom.xml
    root/project2/pom.xml - parent=../parent/pom.xml
    

    更多信息here