Maven执行测试时如何跳过frontend-maven-plugin插件执行?
如何在Maven测试时跳过frontend-maven-plugin插件执行?
我来帮你解决这个问题——你在pom.xml里配置了frontend-maven-plugin管理Node和NPM,现在想在跑Maven测试的时候跳过这个插件的执行,对吧?这里有几个实用的方法:
方法一:命令行直接传参跳过
这是最快捷的方式,不需要修改pom.xml,直接在执行测试命令时添加参数即可:
- 跳过该插件的所有执行逻辑:
mvn test -Dskip.frontend=true - 针对插件的专属跳过参数(更精准):
mvn test -Dmaven.frontend.plugin.skip=true - 或者用Maven通用的插件跳过格式,指定groupId和artifactId:
mvn test -Dmaven.plugin.com.github.eirslett:frontend-maven-plugin.skip=true
方法二:在pom.xml中配置可控制的skip属性
如果你希望能灵活开关插件执行,可以在插件的配置里新增一个可通过外部参数控制的skip属性:
<plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <version>1.4</version> <configuration> <nodeVersion>v6.11.0</nodeVersion> <npmVersion>3.10.10</npmVersion> <workingDirectory>src/main/frontend</workingDirectory> <!-- 添加可控制的skip参数 --> <skip>${skip.frontend}</skip> </configuration> <executions> <execution> <id>install node and npm</id> <goals>...</goals> </execution> </executions> </plugin>
之后执行测试时,只需要传入参数就能跳过:
mvn test -Dskip.frontend=true
平时正常构建时不传递这个参数,插件就会正常执行。
方法三:用Maven Profile批量控制
如果你的项目有多个需要跳过的插件或者配置,可以用Profile来统一管理:
在pom.xml中添加一个专门用来跳过前端插件的Profile:
<profiles> <profile> <id>skip-frontend</id> <properties> <skip.frontend>true</skip.frontend> </properties> </profile> </profiles>
然后执行测试时激活这个Profile即可:
mvn test -Pskip-frontend
内容的提问来源于stack exchange,提问作者htshame
相关产品推荐
相关产品推荐

