error:Could not find gradle

一.更新Android Studio后打开Project,报如下错误:

Error: Could not find com.android.tools.build:gradle:2.2.1. 
Searched in the following locations: 
file:/D:/software/android/android-studio-ide-145.3276617-windows/android-studio/gradle/m2repository/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.pom 
file:/D:/software/android/android-studio-ide-145.3276617-windows/android-studio/gradle/m2repository/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.jar 
https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.pom 
https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.1/gradle-2.2.1.jar

解决方法与Maven仓库有点像:

下载:http://services.gradle.org/distributions/

进入 
D:\software\android\android-studio-ide-145.3276617-windows\android-studio\gradle\m2repository\com\android\tools\build\gradle

这里写图片描述

将项目中的build.gradle文件中

dependencies {
        classpath 'com.android.tools.build:gradle:2.2.1'
}

改为

dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'
}
  • 1
  • 2
  • 3

即可。

注意:gradle的版本指的是仓库中的gradle编译工具版本,不是gradle版本。 
这里写图片描述

再补充一点

build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
allprojects {
    repositories {
        jcenter()
    }
}

android {
    compileSdkVersion 23
    buildToolsVersion '23.0.3'
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}
dependencies {
}

中 
android { buildToolsVersion ‘23.0.3’ } 
这个是在sdk的build-tools目录下 
这里写图片描述

二、从网上下载Android-nRF-Toolbox(一个智能卡表控制程序)编译报错

https://github.com/NordicSemiconductor/Android-nRF-Toolbox 
再下载其依赖库 
https://github.com/NordicSemiconductor/Android-DFU-Library 
修改settings.gradle(Project Settings),使其依赖库引用路径正确

include ':app', ':wear', ':common'

include ':dfu'
project(':dfu').projectDir = file('../Android-DFU-Library-release/dfu')

然后编译报错

ERROR: Could not find method android() for arguments [build_4fli1jm76ubcnxesnhqnhie47$_run_closure3@6e71db85] on root project ”. Information:BUILD FAILED

一开始修改了compileSdkVersion,降低了版本且让子项目的指向root项目,依旧报错。 
然后还修改了com.android.tools.build:gradle为仓库中已经有的版本,还是报错。 
再后来更新了SDK Manager,还重启了电脑,问题依旧存在。

最终解决方案是: 
从网上重新下载项目,然后在记事本中修改settings.gradle中的依赖路径。最后打开android studio x64,引入项目,刚开始它会弹窗要你从jcenter中下载个什么(忘了),这步可以取消,直接进入android studio的项目页面。然后选择更新gradle,它会自动更新,更新好后便可正常运行了。

猜你喜欢

转载自my.oschina.net/u/2902720/blog/1833772