Android CI build: Could not find aapt2-proto.jar

estn picture estn · Oct 23, 2018 · Viewed 8.6k times · Source

I have failing build on a Bitbucket CI server:

> 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

I searched similar questions that suggested the Google Maven repository is missing, but I am not missing it. Top level build file:

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" }
    }
}

And my app level build file:

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()
}

Answer

HedeH picture HedeH · Oct 23, 2018

Try moving the google() method to the top of its execution block.

Maybe it's the order of repositories it searches in that causes the issue.

So for example, change this:

repositories {
  maven { url 'https://maven.fabric.io/public' }
  google() // from here
  mavenCentral()
}

To this:

repositories {
  google() // to here
  maven { url 'https://maven.fabric.io/public' }
  mavenCentral()
}

If that doesn't help, instead of calling the google() method, try changing it to this:

maven {
  url 'https://maven.google.com/'
  name 'Google'
}

UPDATE

If all of the above didn't help - make sure your gradle version is at least 3.0.0:

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

And the gradle-wrapper version is at least 4.1:

Usually located here: project_name/gradle/wrapper/gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip

Source