当前位置:  开发笔记 > Android > 正文

在android studio中执行自定义独立gradle任务

如何解决《在androidstudio中执行自定义独立gradle任务》经验,为你挑选了2个好方法。

我有一个包含多个模块的android项目.我试图从其中一个模块运行自定义gradle任务,但每次我在模块以及其他模块中运行任务所有其他gradle任务.我的任务不依赖于任何其他任务.任务 :

task helloTask{
   println "Hello task"
}

我已经尝试通过工作室和命令行中的终端窗口运行此任务.



1> JBirdVegas..:

Gradle将执行<<配置阶段未声明的所有任务.如果你想将任务的执行延迟到执行阶段,那么你可以添加<<

在你的 build.gradle

task helloConfiguration { task ->
    println "Hello configuration phase task! $task.name"
}

/* Notice the `<<` this denotes to gradle to not execute
 * the closure during the configuration phase. Instead
 * delay closure's execution till the execution phase.
 */
task helloExecution << { task ->
    println "Hello execution phase task! $task.name"
}

helloExecution.dependsOn helloConfiguration

然后在执行helloExecution任务时我们看到两个运行,确保顺序.接下来,如果我们只想运行配置构建的任务,我们可以根据需要单独执行,并且只运行单个任务.

$ gradle helloExecution
Hello configuration phase task! helloConfiguration
Hello execution phase task! helloExecution
:helloConfiguration UP-TO-DATE
:helloExecution UP-TO-DATE

BUILD SUCCESSFUL

Total time: 0.64 secs

$ gradle helloConfiguration
Hello configuration phase task! helloConfiguration
:helloConfiguration UP-TO-DATE

BUILD SUCCESSFUL

Total time: 0.784 secs

即使没有提供任务,在配置阶段运行的任务也将始终执行,这是我期望您看到的行为.所以给出上面的例子.注意配置任务已运行但未执行.

$ gradle
Hello configuration phase task! helloConfiguration
:help

Welcome to Gradle 2.10.

To run a build, run gradle  ...

To see a list of available tasks, run gradle tasks

To see a list of command-line options, run gradle --help

To see more detail about a task, run gradle help --task 

BUILD SUCCESSFUL

Total time: 0.651 secs

因此,如果您在配置阶段运行了5个任务,那么无论命令行args尝试为执行阶段的目标调用哪个任务,您都会看到所有任务都执行.


不幸的是,没有这些答案解决了手头的问题.

2> cyanide..:

在Android Studio中调出Gradle视图(Android Studio窗口的右上角)

按Run Gradle Task(圆形按钮)。

从模块列表中选择包含build.gradle的模块,然后从任务列表中选择task。


同样,在Gradle视图树中YourModule/Tasks/other,除非group明确为任务指定,否则您的任务将显示在下方。

推荐阅读
wangtao
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有