jcw*_*jcw 4 parameters plugins map maven
我正在使用maven 3,我想传入一个类型Map作为参数.
我现在在我的魔力中有这个:
/**
 * @parameter expression="${rep.env}" alias="environments"
 * @required
 */
private Map<String,String[]> environments = null;
我在配置期间传递了这个:
                <environments>
                    <Testing>
                        <param>
                            unit
                        </param>
                    </Testing>
                </environments>
它抱怨它缺少参数环境,您是否允许在maven中执行此操作?
您是否尝试删除该alias="environments"属性?
另一点是,我不确定Maven是否允许您设置Map String[]作为键.我认为它只会处理Map<String, String>(这里的页面只显示一个基本的Map示例).
最后,你可以做的是允许逗号分隔值而不是String[]:
<configuration>
    <environments>
        <one>a,b,c</one>
        <two>d</two>
    </environments>
</configuration>
然后,当你必须处理你的值时,你只需将你的String拆分为一个String数组(你可以使用Apache Commons-lang StringUtils来轻松完成):
/**
 * @parameter expression="${rep.env}"
 * @required
 */
private Map<String, String> environments = null;
public void foo() {
    String[] values = StringUtils.split(environments.get("one"), ',');
    // values == {"a", "b", "c"};
}
| 归档时间: | 
 | 
| 查看次数: | 3014 次 | 
| 最近记录: |