2015-04-03 110 views
0

我正在嘗試使用gradle將文件從一個文件夾複製到另一個文件夾中。在gradle中複製任務

task copyTask(type: Copy) { 

    from 'src/main/AndroidManifest.xml' 
    into 'libs/x86' 

} 

這工作,但

task copyTask(type: Copy) { 

    from 'src/main/AndroidManifest.xml' 
    into 'libs' 

} 

這不。這也不是:

task copyTask(type: Copy) { 

    from 'src/main/AndroidManifest.xml' 
    into '../val' 

} 

我試着用絕對路徑代替,但也沒有工作。 我在working with files上查了幾個例子,我使用的相對路徑結構似乎沒問題。

爲什麼只有一種相對路徑格式有效? 此外,如果我嘗試複製* .jar文件而不是AndroidManifest.xml,那也不起作用。我的複印任務有什麼問題?

+0

你可以提供你的錯誤?我試圖重寫你的例子,但對我來說,它按預期工作。 – 2015-04-03 21:45:22

+0

構建成功,它不會拋出任何錯誤,但是當我查看該文件夾沒有文件被複制。我正在使用命令gradle copyTask。 – user1411110 2015-04-03 21:49:12

+0

你可以嘗試使用--info標誌運行gradle嗎?這應該爲您提供有關執行任務的有用信息,例如這些文件被複制到 – 2015-04-03 21:55:30

回答

1

見這個例子中(從https://stackoverflow.com/a/10002455/950427):

這你想要做什麼,但副本*.wars

task myCopy(type: Copy) { 
    from('source') // <-- folder 
    into('target') // <-- folder 
    include('*.war') // <-- file(s) 
} 

你在你想複製*.jars評論說:

task myCopy(type: Copy) { 
    from('source') // <-- folder 
    into('target') // <-- folder 
    include('*.jar') // <-- file(s) 
}