我有一个配置了执行的插件(antrun),它有一个 id 并且没有绑定到任何阶段。我可以直接从命令行执行此执行吗?
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>my-execution</id>
...
</execution>
</executions>
</plugin>
用类似的东西运行它:
mvn my-execution
或者至少
mvn magicplugin:execute -DexecutionId=my-execution
此功能已在 implemented 中作为 MNG-5768,并且在 Maven 3.3.1 中可用。
更改将:
扩展直接插件调用语法以允许可选的@execution-id 参数,例如 org.apache.maven.plugins:maven-remote-resources-plugin:1.0:process@executionId。
所以,在你的情况下:
mvn antrun:run
使用 default-cli
执行 ID,并且:
mvn antrun:run@my-execution
使用你的 pom.xml 中配置的执行。
执行 maven 插件最直接的方法是直接在命令行中指定插件目标。
mvn groupId:artifactId:version:goal
更多信息请访问:Development guide for Maven plugins
mvn jasypt:encrypt ...
) 是不够的。谢谢@dimitri-dewaele。
您要查找的内容已在 Default+Plugin+Execution+IDs 中捕获,但据我所知目前不支持。但是,根据 MNG-3401 的评论(读到最后):
对于直接从命令行调用的 mojos,您可以使用 executionId: 'default-cli' 从 POM 提供配置,如下所示:
也许这对你来说就足够了。
mvn antrun:run
中使用的只是“antrun”?pluginGroups
,了解为什么可以将org.apache.maven.plugins:maven-antrun-plugin
称为antrun
。