Ionique android erreur de compilation : “Toutes les saveurs doivent appartiennent désormais à un nommé saveur dimension”
J'ai commencé un nouveau projet sur mon ordinateur, mais je ne suis pas plus en mesure de construire pour android
Quand je lance
ionic cordova platform run android
J'obtiens cette erreur :
All flavors must now belong to a named flavor dimension.
Avez-vous une référence de code pour cela?
Certainement le plus étrange erreur que j'ai jamais vu 🙂
Certainement le plus étrange erreur que j'ai jamais vu 🙂
OriginalL'auteur Hugo H | 2017-11-21
Vous devez vous connecter pour publier un commentaire.
Les "saveurs" d'erreur se produit si vous avez la
cordova-plugin-crosswalk-webview
le plugin installé dans votre projet et vous essayez de construire avec Gradle v4.Cependant, si vous souhaitez mettre à niveau à
[email protected]
(par exemple, pour ouvrir votre Cordova plate-forme Android de projet dans Android Studio 3 pour déboguer native code du module), vous devrez mettre à niveau à Gradle v4.Donc
cordova-plugin-crosswalk-webview
est actuellement incompatible avec[email protected]
.Comme une solution de contournement manuelle pour les "saveurs" erreur, vous pouvez insérer un défaut de goût dans la
platforms/android/build.gradle
(voir ici):Mise à jour
Si vous voulez construire avec Gradle v4/
[email protected]+
etcordova-plugin-crosswalk-webview
, mise à jour de Gradle v4 puis installercordova-android
au large de la branche master, depuis cette PR pour résoudre les "saveurs" erreur avec plusieurs APK construit a désormais fusionné:xwalkMultipleApk
àfalse
- par exemple, ` <de préférence name="xwalkMultipleApk" value="false" />`config.xml
, vous pouvez utiliser gradle 4 + [email protected]. $ gradle -v --------------------- Gradle 4.4.1 --------------------- $ cordova plate-forme de ls Installé des plates-formes: android 6.4.0 ios 4.5.4J'ai vérifié que le RP vous a dit, mais ce code ne sont pas sur la version 6.4.0 ni 7.0.0
Maintenant j'obtiens cette erreur après l'ajout de la flavorDimention: par défaut
A problem occurred configuring root project 'android'. > Flavor 'armv7' has no flavor dimension.
tout ce que vous trouvé pour
Flavor 'armv7' has no flavor dimension.
?OriginalL'auteur DaveAlden
Trouvé la solution. 🙂
Gradle version était le problème. J'ai dû passer de 4.X à la 3.5.1, qui workds grand!
Vous de vérifier gradle version en faisant
Si si > 4.x, de le rétrograder!
Ouais, mais vous avez la modification non > versionné fichiers. Ne semble pas être une bonne solution pour moi.
plates-formes/android/build.gradle est dans le système de gestion de versions
Je pense que par défaut, node_modules, plates-formes et les plugins dossiers ne sont pas versionnés par l'ionique de l'équipe 😉
"plates-formes" doit contenir également votre Java ou ObjC code, ou où devrait-il être ?
OriginalL'auteur Hugo H
Je reçois le même message d'erreur et j'ai créé un script pour le résoudre.
Comme il a été dit dans la réponse, le problème est: gradle 4 veut flavorDimensions sur gradle.construire.
Si vous cochez ici: https://cordova.apache.org/docs/en/latest/guide/platforms/android/#extending-buildgradle
Nous pouvons créer un fichier nommé gradle-extra.construire avec seront inclus sur gradle.construire, nous avons juste besoin de créer un script pour coller ce fichier dans /plate-forme/android/.
J'ai donc créé ce fichier build-extras.gradle dans ma racine du projet
et le script ./hooks/after_platform_add/copy_build-extras.gradle.js
Vous pouvez vérifier sur les crochets ici: https://cordova.apache.org/docs/en/latest/guide/appdev/hooks/index.html
chaque script dans /hooks/after_platform_add sera exécuté après ionique de la plate-forme d'ajouter ***
Avec cela, nous n'avons pas besoin de rétrograder gradle, ni le changement cordova-version d'android.
OriginalL'auteur user3081007