我正在编写一个maven插件,并对所有参数使用默认值,例如:
/**
* The file with the site structure.
*
* @parameter expression="${generateSite.siteFile}" default-value="${basedir}/src/oda/site.xml"
*/
private File siteFile;
现在我添加了一个新参数,它是一个集合。有没有办法为如下参数设置默认值?
/**
* A list of file/directory names to exclude in the processing.
*
* @parameter ????
*/
private Set<String> excludes;
2条答案
按热度按时间wnrlj8wa1#
我不认为该集合是明确支持的,但以下内容将起作用:
然后,您可以使用以下方法进行配置:
顺便说一句,这是从参数类型与多个值一节在这页上还详细说明了其他方法,允许参数与多个值。
ufj5ltwl2#
据我所知,这实际上是不可能的,没有真正的方法来为具有多个值(如数组、集合或Map)的参数类型指定默认值,至少不是这样
parameter
. 在过去我也必须这样做,在读取了数组(或collecton)之类的线程作为mojo配置参数的默认值,或者将列表配置为插件参数的默认值之后,我最终在execute()
方法,就像chris在对他的答案的评论中提到的(参见示例)flexmojos:wrapper plugin 源和参数)。