2014-09-25 38 views
0

假设你有这样的:摇篮邮编DuplicatesStrategy工作不正常

task zip(type: Zip) { 
    archiveName = "out.zip" 
    duplicatesStrategy = 'exclude' 

    into('TARGET_FOLDER_IN_ZIP') { 
    from("$rootDir/customizations/folder1") 
    from("$rootDir/customizations/folder2") 
    } 
} 

根据http://www.gradle.org/docs/current/javadoc/org/gradle/api/file/DuplicatesStrategy.html排除手段

不允许在同一路径创建通过忽略后续项目重复。

因此,如果您在文件夹1 & folder2中具有相同的文件名,则只有来自folder1的文件应该以zip结尾。如果更改构建文件中的两个“from”行,则只有来自folder2的文件应该在那里结束。这似乎不是最新发生的事情(gradle 1.10)。而是始终使用相同的文件。看起来像嵌套的“来自”不保留他们的顺序。

回答

0

我发现的唯一的解决办法是分裂的矛盾的地方:

into('TARGET_FOLDER_IN_ZIP') { 
    from("$rootDir/customizations/folder1") 
    } 
    into('TARGET_FOLDER_IN_ZIP') { 
    from("$rootDir/customizations/folder2") 
    } 

现在的顺序是保留的,输出是确定性