码迷,mamicode.com
首页 > 其他好文 > 详细

关于Gradle和Gradle插件的问题

时间:2017-10-03 00:26:07      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:dep   andorid   script   adl   otto   ace   path   builds   构建   

       在Android Studio中经常出现Gradle的编译问题,导致项目无法进行:

        当更新Andorid studio 的时候,你可能会接收到一条让你更新Gradle插件到最新版本的建议。在项目编译需要的基础上,你可以选择接受或者手动选择一个具体的版本。

    下图的表格是Andorid Gradle插件的版本和Gradle版本的对应关系。为了最好的编译表现,你应该使用最新的Gradle插件版本和与之对应的最新的Andorid Gradle 插件的版本:

    技术分享

注释:左侧是Andorid gradle插件的版本,右侧是gradle的版本。


那么在哪里指定Andorid gradle的插件版本呢?

(1)在最外层的build.gradle文件中

buildscript {
  ...
  dependencies {
    classpath ‘com.android.tools.build:gradle:2.3.2‘
  }
}

(2)Andorid studio 中选择File > Project Structure > Project

 

 

1.gradle的配置

 

当我们在setting下gradle下设置gradle选择“use defalut gradle wrapper(recommended)”时,as就会根据{project.dir}\gradle\wrapper\gradle-wrapper.properties文件中的配置去gradle

 

技术分享

 

我们用as构建android项目时,配置gradle时我们必须在{project.dir}\gradle\wrapper\gradle-wrapper.properties文件中配置gradle包,  配置的gradle必须在缓存目录( “用户主目录/.gradle/wrapper/dists/gradle-*.*.*”)或者在as安装目录下的gradle目录下存在对应的版本。

 

例如我的电脑:C:\Users\dsfg\.gradle\wrapper\dists\gradle-2.4-all
 
#Wed Apr 10 15:27:10 PDT 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip

这个配置的gradle如果在目录“用户主目录/.gradle/wrapper/dists/..”存在的话,as就不会去https\://services.gradle.org/distributions/gradle-2.2.1-all.zip去下载了,as就会利用该目录下的缓存,如果该目录下不存在gradle的话as就会去站点根据gradle的版本去下载到“用户主目录/.gradle/wrapper/dists/gradle-2.2.1-all”目录下.

如果选择的是“use local gradle distribution”的话表示用的是本地的gradle,本地的gradle是在as的主目录下的gradle目录下,比如我的电脑D:\android开发环境\android-studio-ide-143.2739321-windows\android-studio\gradle\gradle-2.10,而不会去缓存目录 “用户主目录/.gradle/wrapper/dists/gradle-*.*.*”中去找。

“global gradle setting”我们暂时不考虑

 

技术分享

 

2.android gradle 插件的配置

上面我讨论的是gradle的配置,下面我们来说说android gradle 插件的配置,我们通过主工程项目的build.gradle(不是module的build.gradle)来设置android gradle 插件

 技术分享

 在build.gradle中

dependencies {
    classpath ‘com.android.tools.build:gradle:2.0.0‘}

  这里配置的android gradle插件的版本是2.0.0,再一次强调我们一定要记住gradle版本和android gradle插件的版本根本不是一回事,不能混为一谈,

下面是android studio版本, gradle版本,android gralde 插件的版本关系对应表

 

技术分享 

 

 

 

 

 

 

 

 

关于Gradle和Gradle插件的问题

标签:dep   andorid   script   adl   otto   ace   path   builds   构建   

原文地址:http://www.cnblogs.com/huihuizhang/p/7622982.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!