【发布时间】:2016-07-26 19:57:34
【问题描述】:
我有以下项目结构
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 中定义了一些项目依赖项,并在子项目和子项目 pom 中引用了它。但是如果 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,它用于从外部属性文件中读取属性。这可以用于读取依赖版本还是在这种情况下可以使用任何其他插件/方法?
【问题讨论】:
-
主项目 pom 是否也定义为子项目 1 和 2 的父项目?子项目是否定义为子项目的父项目?您遇到什么类型的问题?
-
哪个连接不工作?在哪些项目之间?
-
@A.DiMatteo Ex:在主项目下,我有不同的网络项目(子项目 1,2..),彼此独立。这些 Web 项目中的每一个都有子模块,这些子模块可以是公共库,也可以是其他相关的 Web 项目。他们每个人都有自己的pom。主项目的 pom 文件具有项目依赖项和版本,只有当它是直接子 pom 时才能访问,而在底层子模块中,项目版本或依赖项在构建期间未解决。向问题添加更多信息
标签: java maven dependencies pom.xml