Android CI 构建:找不到 aapt2-proto.jar
Android CI build: Could not find aapt2-proto.jar
我在 Bitbucket CI 服务器上构建失败:
> Could not resolve all artifacts for configuration ':classpath'.
> Could not find aapt2-proto.jar (com.android.tools.build:aapt2-proto:0.3.1).
Searched in the following locations:
https://jcenter.bintray.com/com/android/tools/build/aapt2-proto/0.3.1/aapt2-proto-0.3.1.jar
我搜索了类似的问题,提示缺少 Google Maven 存储库,但我并没有丢失它。顶级构建文件:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin"
}
}
allprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
}
}
还有我的应用级构建文件:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
google()
}
dependencies {
classpath 'io.fabric.tools:gradle:1.26.1'
}
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
google()
mavenCentral()
}
尝试将 google()
方法移动到其执行块的顶部。
可能是它搜索存储库的顺序导致了这个问题。
例如,更改为:
repositories {
maven { url 'https://maven.fabric.io/public' }
google() // from here
mavenCentral()
}
为此:
repositories {
google() // to here
maven { url 'https://maven.fabric.io/public' }
mavenCentral()
}
如果这没有帮助,请尝试将其更改为:
,而不是调用 google()
方法
maven {
url 'https://maven.google.com/'
name 'Google'
}
更新
如果以上所有方法都没有帮助 - 请确保您的 gradle
版本至少为 3.0.0
:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
并且 gradle-wrapper
版本至少为 4.1
:
通常位于此处:project_name/gradle/wrapper/gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip
将 Gradle 包装器(在 gradle-wrapper.properties 中)升级到 gradle-4.10.2-all.zip 解决了我的问题。
更新Gradle版本
从 android gradle release page 您可以检查 gradle 插件的兼容版本。
更新位于 yourProject/gradle/wrapper
内的 gradle-wrapper.properties
中的 gradle 版本
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.0-all.zip
Plugin version Required Gradle version
2.3.0+ 3.3+
3.0.0+ 4.1+
3.1.0+ 4.4+
请注意顺序很重要。 google()
应该是任何插件仓库的顶部。
对于 Android Studio 版本 > 3.0
buildscript {
repositories {
google() // move it to top
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1' // your Android Studio Version
}
}
allprojects {
repositories {
google() // move it to top
jcenter()
}
google()
plugin is needed since Android Studio version 3.0 or higher.
对于 Android Studio 版本 < 3.0
buildscript {
repositories {
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.0' // your Android Studio Version
}
}
allprojects {
repositories {
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}
我在 Bitbucket CI 服务器上构建失败:
> Could not resolve all artifacts for configuration ':classpath'.
> Could not find aapt2-proto.jar (com.android.tools.build:aapt2-proto:0.3.1).
Searched in the following locations:
https://jcenter.bintray.com/com/android/tools/build/aapt2-proto/0.3.1/aapt2-proto-0.3.1.jar
我搜索了类似的问题,提示缺少 Google Maven 存储库,但我并没有丢失它。顶级构建文件:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin"
}
}
allprojects {
repositories {
google()
jcenter()
maven { url "https://jitpack.io" }
}
}
还有我的应用级构建文件:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
google()
}
dependencies {
classpath 'io.fabric.tools:gradle:1.26.1'
}
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
google()
mavenCentral()
}
尝试将 google()
方法移动到其执行块的顶部。
可能是它搜索存储库的顺序导致了这个问题。
例如,更改为:
repositories {
maven { url 'https://maven.fabric.io/public' }
google() // from here
mavenCentral()
}
为此:
repositories {
google() // to here
maven { url 'https://maven.fabric.io/public' }
mavenCentral()
}
如果这没有帮助,请尝试将其更改为:
,而不是调用google()
方法
maven {
url 'https://maven.google.com/'
name 'Google'
}
更新
如果以上所有方法都没有帮助 - 请确保您的 gradle
版本至少为 3.0.0
:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
并且 gradle-wrapper
版本至少为 4.1
:
通常位于此处:project_name/gradle/wrapper/gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip
将 Gradle 包装器(在 gradle-wrapper.properties 中)升级到 gradle-4.10.2-all.zip 解决了我的问题。
更新Gradle版本
从 android gradle release page 您可以检查 gradle 插件的兼容版本。
更新位于 yourProject/gradle/wrapper
gradle-wrapper.properties
中的 gradle 版本
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4.0-all.zip
Plugin version Required Gradle version 2.3.0+ 3.3+ 3.0.0+ 4.1+ 3.1.0+ 4.4+
请注意顺序很重要。 google()
应该是任何插件仓库的顶部。
对于 Android Studio 版本 > 3.0
buildscript {
repositories {
google() // move it to top
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1' // your Android Studio Version
}
}
allprojects {
repositories {
google() // move it to top
jcenter()
}
google()
plugin is needed since Android Studio version 3.0 or higher.
对于 Android Studio 版本 < 3.0
buildscript {
repositories {
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.0' // your Android Studio Version
}
}
allprojects {
repositories {
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}