【发布时间】:2018-02-08 13:12:40
【问题描述】:
我正在尝试压缩模块中的内容,排除 builds 文件夹,但它没有运行。我在任务外执行println,这可行,但任务内不会打印任何内容。
task fullZip(type: Zip) {
baseName = 'client' //name of the module
from 'client' //name of the module
exclude 'build'
into '../docker/client'
doFirst { println 'before zip' }
doLast { println 'after zip' }
}
这是一个多模块项目,我已经运行了 gradle clean build 和 gradle build 其他模块工作正常,但它们的任务是复制一个 jar,我在这些任务结束时使用 assemble.dependsOn。在这种情况下这行不通。
我只想压缩模块并将其移动到我将解压缩的其他目录。
【问题讨论】:
-
你应该never call
executeon tasks!它不是公共 Gradle API 的一部分。相反,让 Gradle 通过命令行指定任务或注册任务依赖项来执行任务。 -
@lu.koerfer 好的,我删除了执行。我仍然无法运行此任务。
-
如何调用 Gradle,输出是什么?你的项目结构如何?请在您的问题中添加这些详细信息。
-
@lu.koerfer 请看更新
-
您想独立调用它(通过
gradle fullZip)还是作为常规构建生命周期的一部分(无论何时调用gradle build)?请添加gradle build调用的输出。