2017-05-27 65 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將相關性添加到其配置關閉中即可。 –

相關問題