概括
默认生命周期<packaging>war</packaging>中的第一阶段是立即调用. process-resourcesmaven-resources-plugin
如何在运行之前执行插件?
我希望有一种简单的方法可以在运行时更改顺序process-resources以让另一个插件先运行。
或者可能强制将早期阶段之一包含在生命周期中,而不是创建自定义生命周期
(实际上我很惊讶war包装没有使用validation,或者initialization因为它们似乎对任何类型的构建都有意义)
细节
我正在尝试使用buildnumber-maven-plugin生成生成${buildNumber}并使用过滤将其保存在 *.properties 文件中,该文件通常作为验证或初始化阶段的一部分运行。所以我尝试将它绑定到process-resources执行阶段,因为它是第一个。
问题是这是在有机会生成maven-resources-plugin之前执行的第一件事。所有其他属性都被过滤得很好。(我知道我可能可以在稍后的步骤中 使用, 或在清单中做一些事情,但这不是我要问的)buildnumber-maven-plugin${buildNumber}maven-war-pluginweb.xml
如果它们不能在流程资源中重新排序,我希望我可以initialization通过现有的某种简单配置强制将阶段包含在生命周期中pom.xml
components.xml也许在定义自定义生命周期时看起来像。
<configuration>
<phases>
<initialization>org.codehaus.mojo:buildnumber-maven-plugin:create</initialization>
</phases>
</configuration>