Dependencies Gradle:如何在多项目脚本中从另一个项目复制文件夹?

Dependencies Gradle:如何在多项目脚本中从另一个项目复制文件夹?,dependencies,gradle,multi-project,Dependencies,Gradle,Multi Project,我有一个多项目脚本: dependencies { compile '...' ... compile project(':component1') runtime project(':component2') } 我需要将文件夹“bin”从component1和component2复制到当前项目的文件夹“bin”中 更新:我需要它能够在Eclipse中“以”->“在服务器上运行”。每个项目都有Java代码和Web UI文件,并且依赖于工作区中的其他项目。“部

我有一个多项目脚本:

dependencies {
    compile '...'
    ...

    compile project(':component1')
    runtime project(':component2')
}
我需要将文件夹“bin”从component1和component2复制到当前项目的文件夹“bin”中


更新:我需要它能够在Eclipse中“以”->“在服务器上运行”。每个项目都有Java代码和Web UI文件,并且依赖于工作区中的其他项目。“部署程序集”不允许从另一个项目复制已编译的类。

我不理解您完全复制文件夹的要求

但这里是自定义复制任务:

task copyBin(type: Copy) {
    from project(':component1').file('bin')
    into file('bin')
}
并与构建过程挂钩:

jar.dependsOn copyBin

gradle中有复制任务。配置并将其挂接到构建过程这是java项目吗?是的,java Eclipse项目。我不想在复制任务中硬编码依赖项,它们已经在“依赖项”中定义。诀窍是:如何循环复制任务中的依赖项?这也是可能的-我尝试了以下方法:任务copyProjectDependenciesToBinFolder(类型:copy){FileCollection binFoldersFromProjectDependencies=project.configurations.collectMany{It.allDependencies}.findAll{It instanceof ProjectDependency}.file('bin')从binFoldersFromProjectDependencies转换为file('bin')},但它给了我错误:无法将类为“java.util.ArrayList”的对象“[]”转换为类“org.gradle.api.file.FileCollection”,原因是:groovy.lang.GroovyRuntimeException:找不到与:org.gradle.api.file.FileCollection()匹配的构造函数