如何直接从命令行执行maven插件执行?
我有一个插件(antrun),配置了一个执行,它有一个id,并且没有绑定到任何阶段。我可以直接从命令行执行此执行吗如何直接从命令行执行maven插件执行?,maven,maven-2,Maven,Maven 2,我有一个插件(antrun),配置了一个执行,它有一个id,并且没有绑定到任何阶段。我可以直接从命令行执行此执行吗 <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <id>my-execution</id> ... </execution>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>my-execution</id>
...
</execution>
</executions>
</plugin>
或者至少
mvn magicplugin:execute -DexecutionId=my-execution
您正在寻找的内容已在中捕获,但据我所知,目前不支持。然而,根据(读到最后)的评论: 对于直接从 命令行,您可以提供 使用 executionId:“默认cli”如下所示:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>default-cli</id>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
<descriptorRef>project</descriptorRef>
</descriptorRefs>
</configuration>
</execution>
</executions>
</plugin>
maven汇编插件
默认cli
带有依赖项的jar
项目
这应该在Maven 2.2.0和
3.x
也许这对您来说就足够了。此功能已作为,并在Maven 3.3.1中提供 这项改变将: 扩展直接插件调用语法以允许可选的@execution id参数,例如org.apache.maven.plugins:maven远程资源插件:1.0:process@executionId. 因此,在你的情况下:
mvn antrun:run
使用默认cli
执行ID,并:
mvn antrun:run@my-execution
使用pom中配置的执行。执行maven插件最直接的方法是直接在命令行上指定插件目标
mvn groupId:artifactId:version:goal
更多信息请访问:如果您的答案正确,则这不完全是问题事件;)。但是,如何准确地运行“默认cli”执行?如果插件定义中有几次执行,我一直在努力让Spring Boot Jasypt实用程序插件运行,不管出于什么原因,我能让它被Maven识别的唯一方法就是遵循上面的建议。仅仅直接指定目标(
mvnjasypt:encrypt…
)是不够的。谢谢@dimitri-dewaele。关于运行特定执行的问题;您的答案将运行为一个目标配置的所有执行。从工件ID“maven antrun plugin”中,我们如何知道应该在mvn antrun:run
中使用的只是“antrun”?@mks-d请参见为什么org.apache.maven。插件:maven antrun plugin
可以称为antrun
@Joe谢谢,在插件组之上,还有一个明显的机制。。。
mvn groupId:artifactId:version:goal