由于执行顺序,将子用作模块时父中的 Maven 依赖管理失败

标签 maven maven-dependency-plugin

有没有更简单的方法可以强制 maven 在模块之前构建父级?

用例:
我试图了解解决以下问题的最佳实践是什么

我有两个项目,我将命名为“A”和“B”
他们都有一个 parent ,我将其命名为“P”

“P”对共享资源有一个依赖管理,这将允许对共享 Artifact 使用相同的版本。

“P”也用于将“A”和“B”作为模块运行。

问题:
添加新 Artifact 时,我将在“P”中添加版本,在“A”中添加依赖项(例如)。现在在进行 Maven 全新安装时,我得到 'dependencies.dependency.version' is missing for .

这是因为 maven 首先在他自己之前构建它的模块,然后“A”没有版本。

我知道我可以在以下内容中放入“A”pom:
../
它有效(但并非总是如此)。

回到我的问题:有没有一种更简单的方法可以强制 maven 在模块之前构建父级?

最佳答案

我发现我的问题不仅是上面提到的相对路径,而且我的父 pom 版本是一个变量 ${version} 并且在构建期间没有被替换。

为了解决这个问题,我硬编码在父 POM 中编写了父版本。

关于由于执行顺序,将子用作模块时父中的 Maven 依赖管理失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11100484/

相关文章:

java - 如何修复MAVEN中的 "Either artifact or artifactItems is required"错误

java - 如何从 Maven animal sniffer 插件中查找错误源?

maven - 由于处理失败,无法构建 docker 镜像 "${project.artifactId}": missing ':' in substitution

java - 错误 : A JNI error has occurred, 请检查您的安装并在 Eclipse EE 的 Maven 项目中重试

Maven 3 组装插件很慢

maven - "overriding"排除在 Maven 依赖项中的影响

maven - Maven 依赖项 :tree, 的输出将覆盖哪个版本

java - 数据流sdk构建失败

java - 我可以获得maven执行的测试用例总数吗?

maven - ejb-jar.xml.unfiltered 无法删除