我以为我是一个有经验的Maven用户,但我对如何做到这一点有一个心理障碍!
通过执行我定义并绑定到pre-integration-test阶段的插件,我已经能够使用Maven SQL插件在数据库中删除、创建和安装模式。
pre-integration-test
但是,现在我想使用相同的SQL插件从命令行插入一些样例数据--也就是说,不绑定到任何生命周期目标。有几组不同的样本数据,所以我想定义几种不同的执行。
但是,是否有一种方法可以通过使用执行ID从命令行运行这些执行之一?
zd287kbt1#
如How to execute maven plugin execution directly from command line?中所述,此功能已被称为implemented作为MNG-5768,并且在Maven 3.3.1中可用。
这一变化将:扩展直接插件调用语法以允许可选的@Execution-id参数,例如org.apache.maven.plugins:maven-remote-resources-plugin:1.0:process@executionId.
所以,只要你给你的行刑一个id:
mvn sql:execute@specific-execution-id
使用您的POM中配置的执行。
k4ymrczo2#
不是,not possible。但是,可以使用“特殊的”default-cli执行id来定义在从命令行调用插件时使用的**“A”**配置:
default-cli
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>sql-maven-plugin</artifactId> <version>1.4</version> ... <executions> <execution> <id>default-cli</id> <configuration> ... </configuration> </execution> ... </executions> </plugin>
只需调用mvn sql:execute。
mvn sql:execute
详情见下文(摘自Maven 2.2.0 Release Notes):
executionId
<execution>
2条答案
按热度按时间zd287kbt1#
如How to execute maven plugin execution directly from command line?中所述,此功能已被称为implemented作为MNG-5768,并且在Maven 3.3.1中可用。
这一变化将:
扩展直接插件调用语法以允许可选的@Execution-id参数,例如org.apache.maven.plugins:maven-remote-resources-plugin:1.0:process@executionId.
所以,只要你给你的行刑一个id:
使用您的POM中配置的执行。
k4ymrczo2#
但是,是否有一种方法可以通过使用执行ID从命令行运行这些执行之一?
不是,not possible。但是,可以使用“特殊的”
default-cli
执行id来定义在从命令行调用插件时使用的**“A”**配置:只需调用
mvn sql:execute
。详情见下文(摘自Maven 2.2.0 Release Notes):
default-cli
的特殊executionId
在POM中独立于其他插件调用来配置直接从命令行调用的目标。以前,命令行目标的所有配置都必须放在插件级别的配置中,而Maven2.2.0允许将特定于命令行的配置分离到它们自己的<execution>
中。有关详细信息,请参阅Guide to Default Execution IDs。