找不到com.android.tools.build:aapt2:3.2.0

时间:2018-05-10 19:00:36

标签: android android-studio android-studio-3.2

AndroidStudio3.2 Canary14无法通过以下错误进行清理和重建

Could not find com.android.tools.build:aapt2:3.2.0-alpha14-4748712.
Searched in the following locations:
    file:~/Library/Android/sdk/extras/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    file:~/Library/Android/sdk/extras/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
    file:~/Library/Android/sdk/extras/google/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    file:~/Library/Android/sdk/extras/google/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
    file:~/Library/Android/sdk/extras/android/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    file:~/Library/Android/sdk/extras/android/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
    https://jcenter.bintray.com/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    https://jcenter.bintray.com/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
Required by:
    project :app

16 个答案:

答案 0 :(得分:169)

  

从Android Studio 3.2 Canary 11开始,AAPT2(Android资产包装工具2)的来源是Google的Maven存储库。

     

要使用AAPT2,请确保build.gradle文件中包含google()依赖项,如下所示:

buildscript {
  repositories {
      google() // here
      jcenter()
  }
  dependencies {
      classpath 'com.android.tools.build:gradle:3.2.0-alpha12'
  }
} 
allprojects {
  repositories {
      google() // and here
      jcenter()
  }
}
  

新版AAPT2修复了许多问题,包括改进了Windows上非ASCII字符的处理。

buildscript中添加存储库是不够的,您还需要在allprojects中添加它。

来源:https://developer.android.com/studio/releases/#aapt2_gmaven

答案 1 :(得分:12)

只需在您的向导和所有项目上添加google(),然后重建项目即可。

buildscript {
    repositories {
        google() // `enter code here`
    }
 }

allprojects {
    repositories {
        google() // `<-- here`
    }
}

答案 2 :(得分:4)

我收到此错误消息:

无法下载aapt2-osx.jar (com.android.tools.build:aapt2:3.5.0-5435860):无缓存版本 可用于离线模式

即使我已经为我的proyect定义了所有必要的依赖关系,并在build.gradle中配置了正确的配置:

apply plugin: 'com.android.application'

repositories {
    google()
    jcenter()
} 

该错误仍在发生,但是此消息使我了解正在发生的事情:

没有可用于离线模式的缓存版本

因此我发现我正在离线工作,您需要取消选中“离线模式”,然后Android Studio才能下载创建项目所需的资源

enter image description here

当您的项目再次运行时,您可以再次检查以退出工作。

答案 3 :(得分:3)

我通过更改android/gradle/gradle-wrapper.properties中的“ distributionUrl”来解决此问题。

默认值为https\://services.gradle.org/distributions/gradle-4.10.2-all.zip,我将其更改为https\://services.gradle.org/distributions/gradle-5.4.1-all.zip,错误消失了。

答案 4 :(得分:0)

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
        google()  //导入旧版本项目时,一般来说该处依赖会在更改classpath中gradle版本是自动添加
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.0'
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

allprojects {
    repositories {
       /*
        解决报错:Could not find com.android.tools.build:aapt2:3.3.0-5013011.
        Beginning with Android Studio 3.2 Canary 11, the source for AAPT2 (Android Asset Packaging Tool 2) is Google's Maven repository.
        To use AAPT2, make sure that you have a google() dependency in your build.gradle file, as shown here:
        */
        google() //但是此处不会,需要自主添加
        jcenter()
    }
}

答案 5 :(得分:0)

该解决方案分为四个步骤, 1.将build.gradle中的类路径更改为所需版本。 2.立即同步 3.下载完所有文件后,您可以删除新文件并在Gradle中添加以前的版本。 4.立即同步

点击下面的链接

https://www.getsuyodev.com/could-not-resolve-com-android-tools-buildaapt23-5-0-5435860/

答案 6 :(得分:0)

使用更新的等级

更新应用的build.grade文件依赖性
dependencies {    
  classpath 'com.android.tools.build:gradle:3.5.3'   
}

遵循android studio建议更新的版本。 在您的年级班级路径更新并重新同步您的应用程序之后。

所有这些重新启动您的android studio

答案 7 :(得分:0)

我在伊朗,并且Google存储区在我的位置受到限制。当我将IP更改为另一个国家时,此问题得以解决。发生此错误时,您似乎有互联网连接问题。

答案 8 :(得分:0)

3 steps to fix it below within the video

  1. 右边的等级栏
  2. 切换离线模式标志
  3. 重建享受! https://www.youtube.com/watch?v=8W3a6_xwGOo&

答案 9 :(得分:0)

就我而言,我可以通过将“ Android SDK Build-Tools”更新到最新版本来解决该问题。

在Android Studio中,转到“工具”->“ SDK管理器”->“选择SDK工具”选项卡->检查是否有可用于Android SDK Build-Tools的更新(已更新至最新的v30.0.0)。

enter image description here

答案 10 :(得分:0)

即使通过更改此行进行SELECT CAST(TRY_CAST([col1] AS datetimeoffset) AS datetime2(7)) FROM [table] 修复,我也遇到同样的问题

DateTimeOffset

中进行更改
DateTime2

对此

google()

并在build.gradle

中进行更改
classpath 'com.android.tools.build:gradle:3.4.0'

对此

classpath 'com.android.tools.build:gradle:4.0.2'

答案 11 :(得分:0)

转到 settings.gradle 并删除 projectRoot.name 文件

答案 12 :(得分:0)

当我打开旧项目时出现问题

可以通过升级工具gradle来修复

classpath "com.android.tools.build:gradle:4.0.2"

答案 13 :(得分:0)

不幸的是,上面的答案都不够完整,但是这对我有用。只需确保您的 build.gradel 具有以下所有内容

buildscript {
    repositories {
        google() // Check if this Google exists and is in the first
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.5.0'
    }
}

allprojects {
    repositories {
        google() // Check if this Google exists and is in the first
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

答案 14 :(得分:-1)

您需要粘贴:build.gradle() 然后输入google() 这个选项可以在buildscript和allproject部分中完成

答案 15 :(得分:-2)

如果google()未修复,则 文件->设置->构建,执行,部署-> Gradle

然后取消选中离线工作,完成。