我正在尝试通过Gradle任务将一个文件复制到多个目标。我在其他网站上发现了以下内容,但在运行此任务时收到错误消息。

def filesToCopy = copySpec{
    from 'somefile.jar'
    rename {String fileName -> 'anotherfile.jar'}
}

task copyFile(type:Copy) {
    with filesToCopy  {
      into 'dest1/'
    }
    with filesToCopy  {
      into 'dest2/'
    }
}



有没有一种方法可以在一个Gradle任务中复制到多个目的地?

最佳答案

如果您真的希望他们完成一项任务,则可以执行以下操作:

def filesToCopy = copySpec {
  from 'someFile.jar'
  rename { 'anotherfile.jar' }
}

task copyFiles << {
  ['dest1', 'dest2'].each { dest ->
    copy {
      with filesToCopy
      into dest
    }
  }
}

10-07 13:41