我有一个可以从命令行运行的Maven项目,我打算使用mvn exec:java
从一些脚本运行它。该项目可以与插件类型体系结构中的其他不同项目交互,因此我想指定在命令行上加载哪个插件。插件是独立于核心代码开发的,所以我想尽量避免在核心项目的pom中引用它们。是否可以在命令行上指定其他Maven依赖关系?
看起来像exec
的executableDependency
Maven插件的配置可能是我正在寻找的,但它看起来不像我可以在命令行中指定的那样。
我有一个可以从命令行运行的Maven项目,我打算使用mvn exec:java
从一些脚本运行它。该项目可以与插件类型体系结构中的其他不同项目交互,因此我想指定在命令行上加载哪个插件。插件是独立于核心代码开发的,所以我想尽量避免在核心项目的pom中引用它们。是否可以在命令行上指定其他Maven依赖关系?
看起来像exec
的executableDependency
Maven插件的配置可能是我正在寻找的,但它看起来不像我可以在命令行中指定的那样。
您也许可以使用Maven profiles。对不同的使用情况使用不同的配置文件并激活配置文件命令行。配置文件可以包含依赖项和插件,只有在激活该配置文件时才会使用它们。
这是一个好主意,但我想避免使用任何集中式的全部列表插件因为会有很多,并由不同的团队开发。他们都会共享一个普通的父类,所以我想我会添加一个配置文件,将插件运行器拉到父pom,然后从插件本身调用mvn -Prun-plugin。谢谢! – 2013-05-13 16:40:40
我遇到了一个类似的问题(不是在插件的上下文中),我不相信这是可能的。
我必须找到一个快速解决方案回去以后,并在pom.xml
使用的属性:
<dependency>
<groupId>${mygid}</groupId>
<artifactId>${myaid}</artifactId>
<version>${myver}</version>
</dependency>
,并会运行它想:
mvn -Dmygid=junit -Dmyaid=junit -Dmyver=4.11 clean package
我不相信这是目前可能。但是也许可能会对exec插件进行修补:http://svn.codehaus.org/mojo/trunk/mojo/exec-maven-plugin – akostadinov 2013-09-04 07:00:41