gradle - 使用Gradle Tooling API设置任务属性(或命令行参数)

标签 gradle gradle-tooling-api

我想使用Gradle Tooling API通过Buildship插件从Eclipse插件调用Gradle。我能够正常运行基本任务。

我的用例之一是在新的项目文件夹中执行gradle init任务,但要以非交互方式工作,我必须在--type任务上传递type命令行参数(或设置init属性)。我在工具API中找不到任何方法来设置任务的属性或传递特定于任务的命令行参数。

我已经尝试过BuildLauncher.addArgument("--type", "plain"),但这被解释为Gradle本身的一个参数,这是无效的。

如何将--type plain参数传递给init任务?

最佳答案

阅读docs here之后,我发现您可以通过Gradle命令行生成参数来设置任务参数。文档中的重要部分是:

Also, the task names configured by BuildLauncher.forTasks(String...) can be overridden if you happen to specify other tasks via the build arguments.



就我而言,我想通过工具api运行gradle tasks --all。为了使此工作正常进行,我没有指定要通过forTasks()运行的任务,我只是不调用该方法。我通过withArguments()将任务设置为作为参数的一部分运行。 (在这种情况下,参数将为tasks --all)。

我认为这对于init任务应该是相同的。

关于gradle - 使用Gradle Tooling API设置任务属性(或命令行参数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56682316/

相关文章:

android - 包含来自 jCenter 的 AAR 是否也包含其依赖项?

java - 默认情况下对项目依赖项运行 gradle 测试

gradle - 在 Debug模式下构建 Flutter 应用程序时,Gradle 详细日志在哪里?

java - 以编程方式访问build.gradle内容

gradle - Gradle ResultHandler返回null

gradle - 在Gradle Tooling API的Groovy中将varargs作为第二个参数传递

Gradle:迭代测试目录并在每个目录中执行多个任务

android - 如何查看库的所有依赖项?

gradle - 使用gradle工具API时如何设置gradle项目属性?