Impossibile trovare com.android.tools.build:aapt2:3.2.0


105

AndroidStudio3.2 Canary14 non riesce a eseguire la pulizia e la ricostruzione con il seguente errore

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

Risposte:


239

A partire da Android Studio 3.2 Canary 11, la fonte per AAPT2 (Android Asset Packaging Tool 2) è il repository Maven di Google.

Per utilizzare AAPT2, assicurati di avere una dipendenza google () nel tuo file build.gradle, come mostrato qui:

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

La nuova versione di AAPT2 risolve molti problemi, inclusa una migliore gestione dei caratteri non ASCII su Windows.

Aggiungere i repository nel file buildscriptnon è sufficiente, è necessario aggiungerlo anche in allprojects.

Fonte: https://developer.android.com/studio/releases/#aapt2_gmaven


30
Questo ha risolto il problema per me: avevo google()in buildscriptrepository ma non in allprojectsrepository. Molto obbligato.
LarsH

1
Grazie! è una soluzione così semplice. Si pone la domanda sul perché il messaggio di errore deve essere così criptico che l'azione consigliata non è stata inclusa per impostazione predefinita
Antony

3
La risposta di LarsH ha aiutato, un altro punto è che google () dovrebbe essere presente anche sugli altri. Ordina anche Matters qui.
Reejesh PK

È anche possibile costruire il progetto senza la google()dipendenza?
white_gecko

Potresti scaricare l'artefatto da Maven e metterlo nel tuo repository offline se lo desideri davvero
Izabela Orlowska

41

Stai aprendo un progetto molto vecchio? In tal caso, assicurati che il file build.gradle della tua app abbia:

apply plugin: 'com.android.application'

repositories {
    google()
    jcenter()
} 

(Questo mi ha risolto comunque)


La parte importante è la dipendenza dal repository "google ()".
Izabela Orlowska

11
Per me è stato l'ordine. Avevo google()ma era in basso nell'elenco dei pronti contro termine. Spostandolo in cima all'elenco dei repository ha risolto il problema.
Ezekiel Sebastine

questo dovrebbe essere accettato ... (almeno per l'apertura di vecchi progetti) ... il repository chiave era google () e può essere posizionato o in build.gradle dell'app o piuttosto in build.gradle del progetto in allprojects> repository, dove jcenter () di solito è già
Lukáš Řádek

19

Basta aggiungere google()il tuo buidscript e allprojects, quindi ricostruire il progetto.

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

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

Grazie per l'aiuto. L'aggiunta di tutti i progetti ha risolto il problema
Haris Durrani

5

Aggiorna la dipendenza del file build.grade della tua app con la versione aggiornata di grade

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

Segui il suggerimento di Android Studio di della versione a cui aggiornare. dopo l'aggiornamento del percorso di classe del voto e risincronizza l'app.

Dopo tutto questo riavvia il tuo studio Android .


3

Risolvo questo problema modificando "distributionUrl" in android/gradle/gradle-wrapper.properties .

Il valore predefinito era https\://services.gradle.org/distributions/gradle-4.10.2-all.zipe l'ho cambiato in https\://services.gradle.org/distributions/gradle-5.4.1-all.zipe l'errore è sparito.


3

Ho ricevuto questo messaggio di errore:

Impossibile scaricare aapt2-osx.jar (com.android.tools.build:aapt2:3.5.0-5435860): nessuna versione cache disponibile per la modalità offline

Anche se avessi definito tutte le dipendenze necessarie per il mio progetto e la giusta configurazione nel mio build.gradle:

apply plugin: 'com.android.application'

repositories {
    google()
    jcenter()
} 

L'errore si verifica ancora, ma questo messaggio mi ha dato un'idea di cosa stava succedendo:

Nessuna versione memorizzata nella cache disponibile per la modalità offline

Così ho scoperto che stavo lavorando offline, è necessario deselezionare la "modalità offline" quindi Android Studio potrà scaricare le risorse necessarie per creare il progetto .

inserisci qui la descrizione dell'immagine

Quando il tuo progetto funziona di nuovo, puoi ricontrollare per funzionare offline.


3

Sono in Iran e il repository di Google è limitato nella mia località. Quando ho cambiato il mio IP in un altro paese, questo problema è stato risolto. Sembra che tu possa avere un problema di connessione a Internet quando si verifica questo errore.


in realtà sto usando vpn ma il problema ricorda ancora e non posso eseguire il progetto!
Nadia

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


0

La soluzione è un processo in quattro fasi,

  1. modificare il classpath in build.gradle nella versione desiderata.
  2. Sincronizza ora
  3. Dopo aver scaricato tutti i file, puoi eliminare il nuovo e aggiungere la versione precedente in Gradle.
  4. Sincronizza ora

0

Nel mio caso, sono stato in grado di risolverlo aggiornando "Android SDK Build-Tools" alla versione più recente.

In Android Studio, Goto Tools -> SDK Manager -> Seleziona la scheda SDK tools -> controlla se sono disponibili aggiornamenti per Android SDK Build - Tools (aggiornato all'ultima v30.0.0).

inserisci qui la descrizione dell'immagine


-1

devi registrare in: build.gradle () e digitare google () e questa opzione fallo nella sezione buildscript e allproject


1
questo è più un commento che una risposta
sudo97

-2

se google () non è stato risolto, allora File -> Setting -> Build, Execution, Deployment -> Gradle

Quindi deseleziona Ofline Work, Done.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.