如何禁用Maven Resources Plugin的default-resources默认打包行为?
如何禁用maven-resources-plugin的default-resources执行,仅使用自定义打包规则
当然可以禁用default-resources的默认执行,只保留你的自定义打包规则。你只需要在maven-resources-plugin的executions节点里添加一个针对default-resources的执行配置,将其phase设为none,就能覆盖Maven的默认绑定行为。
修改后的完整插件配置如下:
<!-- PACK MODULES --> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.1.0</version> <executions> <!-- 禁用default-resources默认执行 --> <execution> <id>default-resources</id> <phase>none</phase> </execution> <!-- 你的自定义资源打包规则 --> <execution> <id>pack-modules</id> <phase>compile</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.outputDirectory}/modules/${project.artifactId}</outputDirectory> <resources> <resource> <directory>src/main/webapp/modules/${project.artifactId}</directory> </resource> </resources> </configuration> </execution> </executions> </plugin>
说明
- Maven默认会把
maven-resources-plugin的default-resources执行绑定到process-resources阶段,用来处理src/main/resources下的资源。通过显式配置这个执行并设置phase为none,就能让Maven跳过这个默认任务。 - 如果你的项目还需要禁用默认的测试资源处理(
default-testResources),可以用同样的方式添加对应执行,把phase设为none即可。
内容的提问来源于stack exchange,提问作者roediGERhard
相关产品推荐
相关产品推荐

