Maven 2报告'java.util.List'无法实例化错误

时间:2013-07-22 20:26:29

标签: java maven-2 maven-plugin

用户报告说我维护的maven插件不再适用于maven 2(它在maven 3下运行得很好)。它无法用错误

解析pom

Cause: Class 'java.util.List' cannot be instantiated

Google快速建议这是3.0之前的maven模型中的一个错误,它影响了其他插件。

http://code.google.com/p/maven-samaxes-plugin/issues/detail?id=18

我最近通过为List参数指定表达式添加了对通过命令行设置值的支持,并且看起来这已经触发了错误。

 /**
 * @parameter expression="${targetClasses}" 
 */
  protected List<String>  targetClasses;

我可以通过将该字段声明为具体的列表类型来解决这个问题,但是每个人都知道每次执行此操作时都会有一个仙女死去。

除了取消对maven 2的支持或使用具体类型之外,是否有更好的解决方案?

1 个答案:

答案 0 :(得分:0)

现在这已经很老了,你已经回答了自己的问题,我猜......但是,为了完整起见,这里有:

我使用mvn 2.0.9并且必须从List<String>迁移:

/**
 * @parameter expression="${arguments}" 
 */
protected List<String> arguments;      //with or without generics, still complained!

String[]

/**
 * @parameter expression="${arguments}" 
 */
protected String[] arguments;

pom配置如下:

<configuration>
    ...
    <arguments>
        <argument>arg1</argument>
        <argument>arg2</argument>
    </arguments>
</configuration>