我有一个可以从命令行运行的Maven项目,我计划使用mvn exec:java
从一些脚本运行它。该项目可以与插件类型体系结构中的其他不同项目进行交互,因此我想指定在命令行上加载哪个插件。插件是独立于核心代码开发的,所以我想尽可能避免在核心项目的pom中引用它们。
似乎来自executableDependency
Maven插件配置的exec
可能是我正在寻找的,但看起来我不能在命令行上指定它。
答案 0 :(得分:2)
您可以使用Maven profiles。针对不同的用例使用不同的配置文件并激活配置文件命令行。配置文件可以包含依赖项和插件,只有在激活该配置文件时才会使用它们。
答案 1 :(得分:2)
我遇到了一个类似的问题(不是在插件的上下文中),但我不相信这是可能的。
我当时必须找到一个快速解决方案,并使用pom.xml
中的属性:
<dependency>
<groupId>${mygid}</groupId>
<artifactId>${myaid}</artifactId>
<version>${myver}</version>
</dependency>
并且会运行它:
mvn -Dmygid=junit -Dmyaid=junit -Dmyver=4.11 clean package