Spring不通过加载时织入器自动装配集合

时间:2011-08-19 02:34:25

标签: java spring

根据this问题,您似乎可以声明如下内容并使其“正常工作”:

@Configurable(autowire=Autowire.BY_TYPE)
public class Target {

    private List<Dependency> dependencies;

    public List<Dependency> getDependencies() {
        return this.dependencies;
    }

    @Autowired
    public void setDependencies(List<Dependency> dependencies) {
        this.dependencies = dependencies;
    }
}

申请背景:

<beans>
    <!-- where all extend Dependency -->
    <bean class="com.dependencies.SubDependency"/>
    <bean class="com.dependencies.SubSubDependency"/>
</beans>

根据手册,这应该“正常工作”,但事实并非如此。其他依赖项在Target上连接,但列表依赖性不是。有什么我做错了吗?我现在只有一个依赖关系,但这将随着时间的推移而扩展。

1 个答案:

答案 0 :(得分:1)

我有一个在github上使用构建时编织的例子。如果你的编织者不是问题,也许你可以通过比较来识别问题。您可以browse it或克隆并运行它:

git clone git://github.com/zzantozz/testbed.git tmp
cd tmp
mvn -q compile exec:java -Dexec.mainClass=rds.spring.SpringConfigurable \
    -pl spring-aspectj-build-time-weaving