I catalogi delle versioni di Classifiche ti consentono di aggiungere e gestire dipendenze e plug-in in modo scalabile. L'utilizzo dei cataloghi delle versioni Gradle semplifica la gestione delle dipendenze e dei plug-in quando si hanno più moduli. Invece di impostare come hardcoded i nomi e le versioni delle dipendenze nei singoli file di build e aggiornare ogni voce ogni volta che è necessario eseguire l'upgrade di una dipendenza, puoi creare un catalogo delle versioni centrale delle dipendenze a cui i vari moduli possono fare riferimento in sicurezza tramite l'assistenza di Android Studio.
Questa pagina fornisce informazioni di base sulla migrazione della tua app per Android ai cataloghi delle versioni. Per saperne di più, consulta Aggiungere dipendenze per la build e la documentazione di Gradle.
Crea un file di catalogo delle versioni
Per iniziare, crea un file di catalogo delle versioni. Nella cartella gradle
del progetto principale, crea un file denominato libs.versions.toml
. Gradle cerca il catalogo
nel file libs.versions.toml
per impostazione predefinita,
quindi consigliamo di utilizzare questo nome predefinito.
Nel file libs.versions.toml
, aggiungi queste sezioni:
[versions]
[libraries]
[plugins]
Le sezioni sono utilizzate come segue:
- Nel blocco
versions
, definisci le variabili che contengono le versioni delle dipendenze e dei plug-in. Puoi utilizzare queste variabili nei blocchi successivi (i blocchilibraries
eplugins
). - Nel blocco
libraries
, definisci le dipendenze. - Nel blocco
plugins
, definisci i tuoi plug-in.
Passaggi della migrazione
Ti consigliamo di eseguire la procedura nell'ordine indicato. Una build può consumare contemporaneamente dipendenze e plug-in dagli script e dai cataloghi di build, quindi prenditi il tempo necessario per eseguire la migrazione di dipendenze e plug-in individualmente.
Il processo di migrazione è il seguente:
- Aggiungi la nuova voce al catalogo.
- Sincronizza il tuo progetto Android.
- Sostituisci la dichiarazione della stringa precedente con la funzione di accesso sicura per il tipo di catalogo.
Esegui la migrazione delle dipendenze
Aggiungi una voce per ogni dipendenza nelle sezioni versions
e libraries
del file libs.versions.toml
. Sincronizza il progetto, quindi sostituisci le
dichiarazioni nei file di build con i nomi di catalogo.
Questo snippet di codice mostra il file build.gradle.kts
prima di rimuovere la dipendenza:
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.9.0") }
trendy
dependencies { implementation 'androidx.core:core-ktx:1.9.0' }
Questo snippet di codice mostra come definire la dipendenza nel file di catalogo delle versioni:
[versions]
ktx = "1.9.0"
[libraries]
androidx-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "ktx" }
La denominazione consigliata per i blocchi delle dipendenze nei cataloghi è il formato kebab (ad esempio androidx-ktx
) per una migliore assistenza per il completamento del codice nei file di build.
Nel file build.gradle.kts
di ogni modulo che richiede la dipendenza, definisci le dipendenze con i nomi definiti nel file TOML.
Kotlin
dependencies { implementation(libs.androidx.ktx) }
trendy
dependencies { implementation libs.androidx.ktx }
Esegui la migrazione dei plug-in
Aggiungi una voce per ogni plug-in nelle sezioni relative alle versioni e ai plug-in del
file libs.versions.toml
. Sincronizza il progetto, quindi sostituisci le relative dichiarazioni nel blocco plugins{}
nei file di build con i nomi dei relativi cataloghi.
Questo snippet di codice mostra il file build.gradle.kts
prima della rimozione del plug-in:
Kotlin
// Top-level `build.gradle.kts` file plugins { id("com.android.application") version "7.4.1" apply false } // Module-level `build.gradle.kts` file plugins { id("com.android.application") }
trendy
// Top-level `build.gradle` file plugins { id 'com.android.application' version '7.4.1' apply false } // Module-level `build.gradle` file plugins { id 'com.android.application' }
Questo snippet di codice mostra come definire il plug-in nel file di catalogo delle versioni:
[versions]
androidGradlePlugin = "7.4.1"
[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
Come per le dipendenze, la formattazione consigliata per le voci del catalogo a blocchi plugins
è il formato kebab (come android-application
) per una migliore assistenza per il completamento del codice nei file di build.
Il seguente codice mostra come definire il plug-in com.android.application
nei file build.gradle.kts
di livello superiore e di modulo. Usa alias
per i plug-in
provenienti dal file di catalogo delle versioni e id
per i plug-in che non provengono
dal file di catalogo delle versioni, come i
plug-in delle versioni.
Kotlin
// Top-level build.gradle.kts plugins { alias(libs.plugins.android.application) apply false } // module build.gradle.kts plugins { alias(libs.plugins.android.application) }
trendy
// Top-level build.gradle plugins { alias libs.plugins.android.application apply false } // module build.gradle plugins { alias libs.plugins.android.application }
Scopri di più
Per scoprire le opzioni aggiuntive per configurare il catalogo delle versioni, consulta queste risorse:
- Il formato file TOML del catalogo delle versioni documenta le opzioni aggiuntive per la configurazione del file di catalogo.
- Now in Android è la nostra app di esempio che utilizza i cataloghi delle versioni.
Problemi noti
I cataloghi delle versioni Gradle sono ancora in fase di sviluppo attivo. Per ulteriori informazioni su ciò che non è ancora supportato, consulta i problemi noti e le limitazioni.