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