Je reçois soudainement l'erreur suivante lors de la création de l'application Ionic 3 pour Android.
Could not find org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.60-eap-25
Nous avons une solution d'Android Studio ici, mais après avoir modifié mon build.gradle avec le code suivant, j'obtiens toujours l'erreur.
buildscript {
repositories {
...
maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
}
}
allprojects {
repositories {
...
maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
}
}
Mon fichier build.gradle ressemble à ceci après avoir mis à jour mon Cordova et ajouté la solution ci-dessus.
buildscript {
repositories {
google()
jcenter()
maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
}
dependencies {
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.android.tools.build:gradle:3.3.0'
}
}
allprojects {
repositories {
google()
jcenter()
maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
}
//This replaces project.properties w.r.t. build settings
project.ext {
defaultBuildToolsVersion="28.0.3" //String
defaultMinSdkVersion=19 //Integer - Minimum requirement is Android 4.4
defaultTargetSdkVersion=28 //Integer - We ALWAYS target the latest by default
defaultCompileSdkVersion=28 //Integer - We ALWAYS compile with the latest by default
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Toujours la même erreur.
android
cordova
ionic-framework
ionic3
build.gradle
Tapas Mukherjee
la source
la source
...
et supprimé les autres référentiels qui étaient déjà là?gradle:3.0.1
se trouve.Réponses:
Le problème réside dans le
cordova-support-google-services
plugin pour Cordova.Ce plugin
build.gradle
ressemble à ceci à partir d'aujourd'hui (24 octobre 2019):Plus précisément, le problème réside dans cette dépendance:
C'est une façon extrêmement fragile de spécifier les dépendances. Le signe «+» signifie ici «récupérer la version la plus récente disponible dans le dépôt». Si une version plus récente est publiée dans le référentiel et qu'elle rompt la version, alors tout le monde avec ce plugin a ses projets cassés. C'est arrivé aujourd'hui. La version cassée qui est récupérée est
com.android.tools.build:gradle:4.0.0
. Cela nécessite des trucs de Kotlin.C'est pourquoi vous devez TOUJOURS geler les dépendances pour construire votre projet de manière fiable. Ne faites jamais confiance aux nouveautés. Cette dépendance se compile très bien comme hier:
Pour ceux qui utilisent Cordova ou Ionic, vous pouvez apporter une solution rapide pour pouvoir créer le projet en gelant la dépendance dans le fichier:
Ce n'est cependant pas une solution définitive. Si vous réinstallez la plateforme Android via Cordova, l'erreur réapparaîtra. Le responsable du projet doit soit geler la dépendance, soit la corriger pour prendre en charge le niveau 4.0.0. En attendant, utilisez simplement un fork fixe de ce plugin.
la source
EDIT 28/10/19:
cordova-support-google-services a été mis à jour aujourd'hui vers la version 1.3.2 qui change le chemin de classe de
classpath 'com.android.tools.build:gradle:+'
à
classpath 'com.android.tools.build:gradle:3.+'
qui semble corriger l'erreur kotlin
Réponse originale
J'ai réussi à construire le mien en procédant comme suit:
J'ai édité les plateformes-> android-> cordova-support-google-services-> myAppName-build.gradle
et changé
maventCentral()
à
Cela a résolu l'erreur kotlin alors j'obtenais une erreur différente que j'ai résolue en changeant
à
Il s'est ensuite construit avec succès.
la source
cordova plugin rm cordova-support-google-services --force && cordova plugin add cordova-support-google-services
Voici la solution.
Le problème était exactement le référentiel maven ( ici ), mais le problème était avec le build.gradle du plugin cordova -support-google-services , j'ai donc ajouté la ligne requise et tout va bien maintenant, j'ai déjà créé un pull demande au dépôt d'origine ( ici ). Mais en attendant, vous pouvez faire ce que j'ai fait, il suffit de remplacer dans le package.json la version actuelle par mon dépôt:
Avant:
Après:
après cela, vous devrez:
npm install
et c'est tout, vous pouvez maintenant reconstruire votre projet.
J'utilise Ionic 4, et certains plugins nécessitent
cordova-support-google-services
, au cas où vous ne l'auriez pas dans votre package.json l'erreur pourrait être avec un autre plugin, si c'est le cas, veuillez ajouter le package.json afin que nous puissions savoir lequel est le problème.MISE À JOUR 24 / OCT:
J'ai changé la solution dans mon référentiel comme beaucoup d'entre vous l'ont suggéré, maintenant la solution consiste simplement à corriger la dépendance: de: com.android.tools.build:gradle:+ à classpath com.android.tools.build:gradle: 3. + , c'est déjà dans mon repo si vous voulez voir ce qui a changé
la source
dans mon projet je fixe comme ça. (mon projet en kotlin)
la source
Solution pour ionic v3 et cordova
La solution @Mister Smith a résolu mon problème
il faut aller au dossier
puis
Remplacer
classpath 'com.android.tools.build:gradle:+'
par
@La solution alternative que j'ai trouvée consiste à
la source
Pour corriger temporairement la suggestion de @MisterSmith, utilisez un crochet pour réappliquer le verrou:
avec ce code bash trop verbeux:
la source
app-build.gradle
pour%MY_APP_NAME%-build.gradle
. Merci!J'ai dû ajouter à la
maven { url 'https://dl.bintray.com/kotlin/kotlin-eap' }
fois au niveau supérieurbuild.gradle
et auapp
modulebuild.gradle
. Dans les deux cas , les deux dans lebuildscripts.repositories
et enallprojects.repositories
la source
Rien de ce qui précède n'a fonctionné pour moi. J'ai fini par supprimer le plugin google-services et l'ajouter.
cordova plugin rm cordova-support-google-services cordova plugin add cordova-support-google-services
la source