如何在 build.gradle 中将参数传递给 Gradle 任务

Posted

技术标签:

【中文标题】如何在 build.gradle 中将参数传递给 Gradle 任务【英文标题】:How to pass arguments to Gradle task in build.gradle 【发布时间】:2021-07-18 12:16:18 【问题描述】:

例如,我想在这里从build 中排除测试:

task foo(dependsOn: ['clean', 'build']) 
    build.mustRunAfter clean

我需要build -x test,而不是build。 如何在 Groovy 中将 -x test 传递给 build

【问题讨论】:

为什么不依赖其他东西而不是构建? Gradle 无法按照您尝试使用的方式工作...如果您只想编译,则只需依赖 assemble docs.gradle.org/current/userguide/… @tim_yates 我需要一些与build 完全相同但无需测试的东西。 assemble 不同,请参见此处的 cmets:***.com/a/4714118/5969852。 是 javadoc 还是编译你想念的测试类?如果不运行它们,为什么还要编译它们? 【参考方案1】:

不能为单个任务定义像-x 这样的启动参数。它们始终是特定 Gradle 调用的一部分。

但是,您可以创建一个从 Gradle 内部调用 Gradle 的任务:

task foo(type: GradleBuild) 
    tasks = ['clean', 'build']
    startParameter.excludedTaskNames = ['test']

【讨论】:

以上是关于如何在 build.gradle 中将参数传递给 Gradle 任务的主要内容,如果未能解决你的问题,请参考以下文章

将参数传递给build.gradle

如何从命令行将参数传递给gradle

如何在 Delphi 2010 中将参数传递给 flash 电影?

如何在django中将多个参数传递给url

如何在 Flutter 中将参数传递给动作

如何在谷歌云构建中将参数传递给 docker run