使用Gradle插件删除文件和文件夹

时间:2015-10-21 18:28:39

标签: gradle gradlew

我正在为Gradle使用此插件:https://gradle-ssh-plugin.github.io/

我添加了一个名为delete的新任务,它应该删除某些文件夹和文件。所以我写了以下内容:

task delete {
    ssh.run {
        session(remotes.web01) {
            execute 'cd /var/www/html/; rm -rf *'
        }
    }
}

但这不会做任何事情。当我执行./gradlew delete时,它只会说

:delete UP-TO-DATE

BUILD SUCCESSFUL

Total time: 4.367 sec

我似乎无法弄清楚为什么我的文件夹和文件没有被删除。只是为了确保我的会话运行正常,我运行了execute 'cd /var/www/html/; mkdir test'而不是我原来的,并且 创建了一个名为“test”的文件夹。在将一些文件放入其中后,当我用execute 'cd /var/www/html/; rm -rf test'替换执行命令时,它确实正确删除了该文件夹。

我确保所有文件夹和文件都是可读写的。

知道我应该做什么吗?

1 个答案:

答案 0 :(得分:0)

您在配置阶段而不是执行阶段执行ssh操作。任务应定义为

task delete << {
    ssh.run {
        session(remotes.web01) {
            execute 'cd /var/www/html/; rm -rf *'
        }
    }
}