Java 构造一个对象的Springbean时出错,该对象包含一个枚举,然后是一个vararg枚举

Java 构造一个对象的Springbean时出错,该对象包含一个枚举,然后是一个vararg枚举,java,spring,enums,Java,Spring,Enums,我有以下对象和构造函数: public class Options { public Options(Enum option, Enum... moreOptions) { // My code... } public Enum build(String nameOfEnum) { // Creates enum.... } } 我正试图使用以下xml为其创建一个Springbean,基于以下问题的答案: #{Options.

我有以下对象和构造函数:

public class Options {
    public Options(Enum option, Enum... moreOptions) {
        // My code...
    }

    public Enum build(String nameOfEnum) {
        // Creates enum....
    }
}
我正试图使用以下xml为其创建一个Springbean,基于以下问题的答案:


#{Options.build('secondEnum')}”
#{Options.build('thirdEnum')}”
但是,我遇到了以下错误:

org.springframework.beans.factory.UnsatifiedPendencyException:创建名为myBean的bean时出错,该bean在ServletContext资源[applicationContext.xml]中定义:通过索引1为[java.lang.Enum[]类型的构造函数参数表示未满足的依赖关系:无法转换类型为[java.util.ArrayList]的构造函数参数值到所需类型[[Ljava.lang.Enum;]:未能将类型“java.util.ArrayList”的值转换为所需类型“java.lang.Enum[]”;嵌套异常为java.lang.IllegalStateException:无法将类型[java.lang.String]的值转换为所需类型[java.lang.Enum]:找不到匹配的编辑器或转换策略

我在我当前的spring配置中尝试了一些变化,比如在列表中包含所有值,或者仅仅创建每个值,但似乎都不起作用

如何正确创建Springbean

<bean id="myBean" class="com.mypackage.Options">
    <constructor-arg value="#{Options.build('firstEnum')}" />
    <constructor-arg>
        <list>
            <value>#{Options.build('secondEnum')}"</value>
            <value>#{Options.build('thirdEnum')}"</value>
        </list>
    </constructor-arg>
<bean>