我继承了另一位开发人员的项目,pom.xml
中有一点我不太了解。它如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>filter</id>
<phase>generate-resources</phase>
<goals>
<goal>resources</goal>
</goals>
</execution>
</executions>
</plugin>
有人可以说明它想要做什么吗?我认为它说,&#34;在运行任何生成资源阶段时进行过滤&#34;。它是否正确?
答案 0 :(得分:3)
不,你的解释是不正确的。
这是宣布maven-resources-plugin
的执行。此执行的id为filter
,但这只是一个技术标识符,它不参与构建本身。此执行绑定到默认生命周期的generate-resources
phase,并调用该插件的resources
目标。
话虽如此,这真的很奇怪,可能完全无用。默认情况下,resources
的{{1}}目标已在maven-resources-plugin
阶段(即process-resources
阶段之后)的默认生命周期中调用。这个目标的作用是将项目的所有资源(即默认情况下generate-resources
下的内容)复制到主输出目录(即默认情况下为src/main/resources
文件夹)。因此,此任务将执行两次:一次处于target
阶段(根据您的POM执行),另一次处于generate-resources
阶段默认情况。