Résolution de l’erreur : “Could not resolve all files for configuration ‘:launcher'” sur Unity 2022.3.28f1
Unity est l’un des moteurs de jeu les plus populaires dans le monde du développement de jeux vidéo. Cependant, malgré sa puissance et sa polyvalence, il n’est pas rare de rencontrer des problèmes techniques, notamment lors de l’exportation d’une application. L’une des erreurs courantes que les développeurs rencontrent, en particulier après avoir installé certains plugins ou packages, est l’erreur “Could not resolve all files for configuration ‘:launcher’“.
Cette erreur peut survenir pour diverses raisons, mais elle est généralement liée à des conflits ou à des problèmes de résolution des dépendances lors de la génération du projet Android. Dans cet article, nous allons explorer en détail comment résoudre ce problème spécifique dans Unity 2022.3.28f1, après l’installation du plugin Ads Mediation de Unity.
Contexte et cause de l’erreur
L’erreur “Could not resolve all files for configuration ‘:launcher'” se produit souvent lors de l’étape d’exportation de votre projet Unity vers Android. Cette erreur est liée au processus de Gradle, l’outil de construction utilisé par Android pour compiler et empaqueter des applications. Gradle gère les dépendances du projet, et tout problème de configuration peut entraîner des erreurs comme celle-ci.
Dans ce cas particulier, l’installation du plugin Ads Mediation de Unity a probablement introduit des changements dans les fichiers de configuration de Gradle, ce qui a conduit à cette erreur. L’installation de nouveaux plugins ou de nouvelles bibliothèques peut parfois provoquer des conflits de dépendances, des incohérences dans les versions de Gradle, ou des problèmes de compatibilité avec le projet Unity.
Étape 1 : Activer les modèles Gradle personnalisés
La première étape pour résoudre cette erreur consiste à activer les modèles Gradle personnalisés dans Unity. Cette fonctionnalité permet de personnaliser les fichiers de configuration de Gradle, ce qui est essentiel pour corriger les erreurs liées aux dépendances.
Pour activer les modèles Gradle personnalisés, suivez ces étapes :
- Allez dans le menu File de Unity.
- Sélectionnez Build Settings.
- Dans la fenêtre qui s’ouvre, cliquez sur Player Settings.
- Sous l’onglet Player Settings, activez les options Custom Base Gradle Template et Custom Gradle Settings Template.
Ces options permettront de générer des fichiers de modèle Gradle personnalisés que vous pourrez modifier pour résoudre les problèmes de configuration.
Étape 2 : Modifier le fichier settingsTemplate.gradle
Une fois les modèles Gradle personnalisés activés, l’étape suivante consiste à modifier le fichier settingsTemplate.gradle
pour corriger les erreurs de dépendances.
- Naviguez jusqu’à Assets > Plugins > Android dans votre projet Unity.
- Ouvrez le fichier
settingsTemplate.gradle
.
Le fichier devrait ressembler à ceci :
gradleCopier le codepluginManagement {
repositories {
**ARTIFACTORYREPOSITORY**
gradlePluginPortal()
google()
mavenCentral()
}
}
include ':launcher', ':unityLibrary'
**INCLUDES**
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
**ARTIFACTORYREPOSITORY**
google()
mavenCentral()
flatDir {
dirs "${project(':unityLibrary').projectDir}/libs"
}
}
}
La section dependencyResolutionManagement
est souvent à l’origine des problèmes de résolution des dépendances. Pour résoudre l’erreur, vous devrez la supprimer complètement. Après modification, le fichier settingsTemplate.gradle
devrait ressembler à ceci :
gradleCopier le codepluginManagement {
repositories {
**ARTIFACTORYREPOSITORY**
gradlePluginPortal()
google()
mavenCentral()
}
}
include ':launcher', ':unityLibrary'
**INCLUDES**
En supprimant la section dependencyResolutionManagement
, vous éliminez un potentiel conflit qui pourrait empêcher Gradle de résoudre correctement les dépendances de votre projet.
Étape 3 : Modifier le fichier baseProjectTemplate.gradle
L’étape suivante consiste à apporter des modifications au fichier baseProjectTemplate.gradle
, qui gère les configurations principales de Gradle pour votre projet.
- Allez à nouveau dans Assets > Plugins > Android.
- Ouvrez le fichier
baseProjectTemplate.gradle
.
Ce fichier ressemble probablement à ceci :
gradleCopier le codeplugins {
// If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity
// See which Gradle version is preinstalled with Unity here https://docs.unity3d.com/Manual/android-gradle-overview.html
// See official Gradle and Android Gradle Plugin compatibility table here https://developer.android.com/studio/releases/gradle-plugin#updating-gradle
// To specify a custom Gradle version in Unity, go do "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)" and specify a path to a custom Gradle version
id 'com.android.application' version '7.1.2' apply false
id 'com.android.library' version '7.1.2' apply false
**BUILD_SCRIPT_DEPS**
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Pour résoudre l’erreur, ajoutez la fonction suivante entre la section plugins
et la tâche clean
:
gradleCopier le codeallprojects {
repositories {
**ARTIFACTORYREPOSITORY**
google()
mavenCentral()
flatDir {
dirs "${project(':unityLibrary').projectDir}/libs"
}
}
}
Après cette modification, le fichier baseProjectTemplate.gradle
devrait ressembler à ceci :
gradleCopier le codeplugins {
// If you are changing the Android Gradle Plugin version, make sure it is compatible with the Gradle version preinstalled with Unity
// See which Gradle version is preinstalled with Unity here https://docs.unity3d.com/Manual/android-gradle-overview.html
// See official Gradle and Android Gradle Plugin compatibility table here https://developer.android.com/studio/releases/gradle-plugin#updating-gradle
// To specify a custom Gradle version in Unity, go do "Preferences > External Tools", uncheck "Gradle Installed with Unity (recommended)" and specify a path to a custom Gradle version
id 'com.android.application' version '7.1.2' apply false
id 'com.android.library' version '7.1.2' apply false
**BUILD_SCRIPT_DEPS**
}
allprojects {
repositories {
**ARTIFACTORYREPOSITORY**
google()
mavenCentral()
flatDir {
dirs "${project(':unityLibrary').projectDir}/libs"
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Étape 4 : Réexporter le projet
Une fois que vous avez apporté ces modifications aux fichiers settingsTemplate.gradle
et baseProjectTemplate.gradle
, sauvegardez les fichiers et fermez-les. Retournez dans Unity et essayez d’exporter à nouveau votre projet Android. Avec les modifications apportées, Gradle devrait désormais être capable de résoudre correctement toutes les dépendances, et l’erreur “Could not resolve all files for configuration ‘:launcher'” devrait être résolue.
Conclusion
Les erreurs de dépendances dans Unity, en particulier lors de l’exportation vers Android, peuvent être frustrantes, mais elles sont généralement résolubles avec quelques ajustements dans les fichiers de configuration de Gradle. Le problème “Could not resolve all files for configuration ‘:launcher'” est un exemple classique de conflit de dépendances qui peut survenir après l’installation de plugins supplémentaires comme Ads Mediation de Unity.
En suivant les étapes décrites dans cet article, vous pouvez résoudre ce problème et continuer à développer votre jeu sans interruption. N’oubliez pas que la clé pour résoudre ces types de problèmes est de comprendre comment Unity et Gradle interagissent et de savoir où effectuer les ajustements nécessaires pour rétablir une configuration de build fonctionnelle.
Ce guide est basé sur des solutions communautaires et des ajustements spécifiques pour les versions récentes de Unity, et devrait vous aider à naviguer à travers ces défis techniques avec succès.
Étiquette :Android, gamedev, gradle, Indie Gamedev, Unity, unity 2022, Unity 2023, Unity 2024, Unity 6