Как скопировать каталог в Gradle с сохранением символических ссылок? - PullRequest
0 голосов
/ 12 сентября 2018

Следующая задача gradle копирует каталог, но разрешает все символические ссылки. Это неприемлемо. Я хочу сохранить.

task test {
    doLast {
        copy {
            from 'source'
            to 'destination'
        }
    }
}

Что с этим можно сделать?

1 Ответ

0 голосов
/ 12 сентября 2018

Существует открытый выпуск для этой "ошибки"

На данный момент вы можете обнаружить символические ссылки и, возможно, создать их вручную

import java.nio.file.FileSystems
import java.nio.file.Files
import java.nio.file.Path

copy {
    from $source
    into $destination
    eachFile { details ->
        Path pathFile = FileSystems.getDefault().getPath(details.file.path)
        if(Files.isSymbolicLink(pathFile)) {
            details.exclude()
            commandLine 'ln', '-s', Files.readSymbolicLink(pathFile), "$destination/${details.relativePath}
        }
    }
}
...