2

我是编写 gradle 任务的新手。

我已经.gradle在我的项目的根目录中添加了一个文件,在这个gradle文件中有一些任务,我的问题是如何在 android studiotasks中运行这些?Terminal

毕业任务

当我在 android studio 中使用终端运行任务时,它返回以下错误:

Task 'testTask' not found in root project 'TestProject'.
4

2 回答 2

5

我们必须将任何自定义 gradle 脚本添加到 build.gradle 中apply from
,例如:

apply from: "$rootDir/test.gradle"
于 2017-08-09T08:45:08.447 回答
2

只是为了解释一下,遵循@DeKaNszn 的回答:

根据脚本所在的位置,您需要build.gradle使用它来扩展您的脚本。

如果脚本在根目录中,是的,包括

apply from: "$rootDir/test.gradle"

将扩展您已应用它的脚本,那么如果您test.gradle在根目录中并且您想从您的项目或任何子项目访问该脚本中定义的任务,您将需要build.gradle在此项目中应用它, 因为否则 gradle 不会自动读取并配置任务。

build.gradle会自动读取,因此使用您的脚本对其进行扩展将配置您要使用的任务并使其对 Gradle 可见。


有一种约定,将您的脚本放在gradle目录中,build.gradle并且settings.gradle仅保留在根目录中,但这只是一种偏好。

但是如果你想遵循这个想法,你需要给它一个应用路径,就像上面一样,并且总是使用指向目录的 Gradle 变量。$rootDir,$buildDir等。

于 2017-08-09T10:02:18.710 回答