我有一個可以從命令行運行的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