2017-05-27 23 views

回答

0

您可以简化您的CopySpec

copy { 
    from file('.env.template') 
    into projectDir 
    rename '.*', '.env' 
} 

from方法接受一个File对象和,因为只有这一个文件被拷贝, rename模式可以匹配任何复制的文件。

这种方式简单,干净,但跟随摇篮概念,你应该考虑使用Copy任务,保持配置执行阶段之间的干净的切割。

编辑:

我刚刚了解到,一个可为rename方法关闭,所以你也可以使用:

copy { 
    // ... 
    rename { '.env' } 
} 
+0

“跟着摇篮概念” - 我会怎么称呼这个复制任务从我的任务呢? –

+1

依靠它。任务只通过命令行显式调用,所有其他任务执行由Gradle内部通过构建依赖关系树来管理。如果您有任务(例如'Jar'类型),并且需要在每次执行任务之前复制文件,则只需通过dependsOn myCopyTask将相关性添加到其配置关闭中即可。 –

相关问题