如何在Maven中的多个项目之间共享项目依赖关系?

我有以下项目结构

Main Project
--Sub Project 1
    - child 1
        * pom-child1
    - child 2
        * pom-child2
  * pom-sub-project1

--Sub Project 2
      * pom-sub-project2
* main project pom

我在主项目pom中定义了几个项目依赖关系,并将其引用到子项目和子项目poms中。 但是如果pom不是主项目pom的直接子项,我会发现问题。 有没有办法解决它?

例子,主要项目pom

<packaging>pom</packaging>
<version>dev</version>
<name>parent-project</name>
..
<properties><spring-version>3.1.0.RELEASE</spring-version></properties>

孩子POM

<parent>
        <groupId>com.test.pkg</groupId>
        <artifactId>test-proj</artifactId>
        <version>${project.version}</version>
    </parent>

如果$ {project.version}不是父pom的直接孩子,则不解决项目依赖关系。

另外,我阅读了有关用于从外部属性文件读取属性的properties-maven-plugin 。 这可以用于阅读依赖版本,或者是否有任何其他插件/方法可以在这种情况下使用?


你不能使用

${project.version}

定义你的父母版本,因为这个孩子默认继承父母版本。

使用有效值设置父母版本,而不是使用属性。

如果你这样做了,它应该可以工作,并且你不必指定子版本,因为它将从父代继承。

链接地址: http://www.djcxy.com/p/29705.html

上一篇: How to share project dependencies among multiple projects in Maven?

下一篇: Maven POM dependency management with submodules