【发布时间】:2012-12-23 14:40:07
【问题描述】:
我有一个 Maven 多模块项目:
- 根
- 公地
- 通用模块
- 插件
- 插件
- 公地
commons 和 plugins 没有相同的父级,并且是“独立的”。
在 commons-module 中我定义了 2 个配置文件,projectA 和 projectB。在每个配置文件中,我定义了属性,例如 dep.version、dep1.version 等... 后来我在dependencyManagemnt中将这些属性用于“dep”和“dep1”部分的依赖项中的版本部分。
在插件(插件的父级)中,我在 commons-module 上有一个依赖范围导入,以获取依赖项列表。 当我构建插件模块时,我是否执行 -PprojectA 或 -PprojectB 似乎并不重要:maven 说它们不存在。它们确实存在,但在我导入的公共模块中。 所以当我 mvn 依赖项时,我得到的依赖项没有正确的版本:树
这是我想要实现的可能,我没有错吗,这是一个 Maven 错误,还是一个不支持的功能?有人知道吗?
谢谢, 内森。
【问题讨论】:
-
“导入”是什么意思?您是否只是声明了对该工件的依赖关系?
-
不,我声明了对范围为“import”的 pom 文件的依赖。请看import scope
-
如果他们没有相同的父母,你为什么把他们都放在
root下? -
@DanielKaplan 有关 pom 继承与模块包含的更多详细信息,请参阅 this post。
标签: maven import scope profile