Android Studio的“gradle-aware make”执行什么命令

时间:2014-03-18 12:17:02

标签: android gradle android-studio

我玩Android Studio& Gradle并且对gradle-aware make实际上做的事感兴趣。我感兴趣的原因是我最初认为新AS项目默认gradle-aware make的默认运行配置运行 gradle assembledebug 命令(查看AS底部的状态)在构建期间显示app:assembleDebug任务正在运行),然后一些安装和运行命令。

然而,在对已安装系统gradle版本为1.9且计划设置为1.10的包装器的计算机上进行测试时,我得到以下内容

  • gradle assembleDebug - >失败:无法创建“AppPlugin”类型的插件。
  • ./ gradlew assembleDebug - >成功
  • AS Run - >成功

在我看来,如果AS Run使用 gradle assembledebug

,则上述gradle-aware make会失败

查看src我可以看到MakeBeforeRunTaskProvider.java类和relevant commits,但我看不到相关信息

1 个答案:

答案 0 :(得分:6)

(已经回答了我自己的问题,因为在撰写时我找到了答案 - 但我认为如果这让我感到困惑,那么其他人也会发布简单的答案)

原来我应该查看设置,因为你可以设置应该使用的gradle版本 - 它默认为"默认包装器"。

现在,当您在AS中创建新项目时,您将设置默认包装器。如果要将自定义包装器部分添加到表单

的根build.gradle中,则可以
task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

然后使用 gradle wrapper 运行任务以更新项目gradle包装器(在./gradle/中)。这样可以轻松更新包装器版本。

我假设"使用cusomtizable gradle wrapper"选项只是在任何其他gradle任务(可以有一个用于gradle zip下载的自定义URL)之前运行此wrapper任务,而"使用默认..."将只使用最后生成的包装器。如果项目没有生成包装,这将显示为灰色。如果您认为这是错误的,请纠正我。

这是使用AS 0.4.6。令人讨厌的是,有一个错误,同步gradle文件将在这里更改项目设置 - 看起来像以前的设置是我在一个项目上看到的如果去"默认..."而另一个是" local"。是时候升级AS了!

此外,AS gradle console窗口显示确切的命令和输出

AS gradle settings - 0.4.6