如何从gradle中的其他子项目配置引用文件集

时间:2012-09-16 16:30:25

标签: gradle

我想要这样的东西(注意:sub是对子项目的引用)

task deleteJars(type: Delete) {
    ext.collection = files { genLibDir.listFiles() }
    delete ext.collection
}
task copyJars(type: Copy) { 
    from(:sub.configurations.compile) {}
    from(fixedLibDir) {}
    into genLibDir
}
copyJars.dependsOn('deleteJars')
classes.dependsOn('copyJars')

然而,这不会编译。对于playframework,我需要将其他项目配置中的jar放入我的lib目录,以便playframework启动。我该如何修复上述代码?

感谢, 迪安

2 个答案:

答案 0 :(得分:4)

应该是这样的:

project(":sub").configurations.compile

答案 1 :(得分:2)

别忘了把

evaluationDependsOn('sub')

在主脚本的开头。否则,您将收到错误,例如

 Configuration with name 'compile' not found

原因是一般主项目是在子项目之前编译的,编译器很难找到配置'编译'子项目。