Czy istnieje sposób na uniknięcie zastępowania plików podczas korzystania z zadania type:Copy
?Kopiowanie z gradientem bez nadpisywania
To jest moje zadanie:
task unpack1(type:Copy)
{
duplicatesStrategy= DuplicatesStrategy.EXCLUDE
delete(rootDir.getPath()+"/tmp")
from zipTree(rootDir.getPath()+"/app-war/app.war")
into rootDir.getPath()+"/tmp"
duplicatesStrategy= DuplicatesStrategy.EXCLUDE
from rootDir.getPath()+"/tmp"
into "WebContent"
}
chcę uniknąć określić wszystkie pliki za pomocą wykluczyć 'file/plik *'.
Wygląda na to, że duplicatesStrategy= DuplicatesStrategy.EXCLUDE
nie działa. Czytałem o problemie na gradle 0.9, ale używam Gradle 2.1.
Czy ten problem nadal istnieje?
Czy nie rozumiem, w jaki sposób to zadanie powinno być właściwie używane?
Dzięki
Co dokładnie masz na myśli przez „Czy istnieje sposób, aby uniknąć plików nadpisywania”? W powyższym kodzie drugie "do" zwycięży nad pierwszym (może istnieć tylko jeden najwyższy poziom 'na'). Również 'do' i 'od' nigdy nie może być takie samo dla tego samego zadania kopiowania. –
Nawet jeśli uruchomię to zadanie Gradle zastąpić plik do WebContent 'Rozpakuj zadań (typ: Copy) { \t duplicatesStrategy = DuplicatesStrategy.EXCLUDE \t z rootDir.getPath() + "/ tmp" \t do„WebContent " }' – carlitos081
Widzę, co masz na myśli. 'DuplicatesStrategy' dotyczy duplikatów w źródłach kopii (' od'). Nie ma opcji konfiguracyjnej, aby powiedzieć zadanie "Kopiuj", aby nie nadpisywać plików, które już istnieją w katalogu docelowym, ale prawdopodobnie można to osiągnąć, używając 'eachFile'. Aby uzyskać szczegółowe informacje, zobacz 'Copy' w [Gradle Build Language Reference] (http://gradle.org/docs/current/dsl/index.html). Możesz również znaleźć pokrewną próbkę w katalogu 'samples' pobierania' gradle-all'. –