Après avoir exécuté ionic cordova build Android
, j'obtiens cette erreur:
FAILURE: Build failed with an exception.
* What went wrong:
Could not resolve all files for configuration ':debugCompileClasspath'.
> Could not find runtime.jar (Android.Arch.lifecycle:runtime:1.0.0).
Searched in the following locations:
https://jcenter.bintray.com/Android/Arch/lifecycle/runtime/1.0.0/runtime-1.0.0.jar
Et c'est juste. Quand je vais à cette URL https://jcenter.bintray.com/Android/Arch/lifecycle/runtime/1.0.0/runtime-1.0.0.jar
je reçois un 404 Not found error
en tant que JSON.
Je ne vois aucune version spécifique d'Android/Cordova dans cette URL, je ne peux donc pas en dire autant depuis mon installation de Cordova.
Version Cordova: 7.1.0
Informations ioniques:
cli packages: (C:\Users\%User%\AppData\Roaming\npm\node_modules)
@ionic/cli-utils : 1.19.2
ionic (Ionic CLI) : 3.20.0
global packages:
cordova (Cordova CLI) : not installed // this is strange. I can run cordova in my terminal tho
local packages:
@ionic/app-scripts : 3.1.8
Cordova Platforms : Android 6.4.0
Ionic Framework : ionic-angular 3.9.2
System:
Android SDK Tools : 26.1.1
Node : v8.4.0
npm : 5.3.0
OS : Windows 10
Environment Variables:
Android_HOME : C:\Users\%User%\AppData\Local\Android\Sdk
Misc:
backend : pro
De plus, je n'ai pas de dossier cordova-Android
dans C:\Users\%USER%\.cordova\lib\npm_cache
(je ne sais pas si cela aide. J'ai vu des gens parler de ce dossier)
Quel est le problème ici? D'où vient cette URL? Comment puis-je le changer et avec quoi puis-je le changer?
Si je ne peux pas résoudre cela facilement, il reste une dernière étape: tout supprimer et tout réinstaller.
Je vous remercie!
Une solution temporaire rapide consiste à inclure le dépôt Google Maven dans votre fichier de niveau supérieur.
allprojects {
repositories {
mavenLocal()
maven { url 'https://maven.google.com' } // <-- add this!
jcenter()
Pour moi AIT MANSOUR et Moritz answers n'a pas fonctionné, car d'autres dépendances nécessitaient jcenter()
et jitpack
. De plus, pour react-native
, vous avez besoin du node_modules
.
Donc, ma solution pour react-native
est
allprojects {
repositories {
// this is for native modules I'm developing
mavenLocal()
// for modules depending on jitpack.io
maven { url "https://jitpack.io" }
// add this one
maven {
url "https://maven.google.com"
}
maven {
url "$rootDir/../node_modules/react-native/Android"
}
// keep this at the end
jcenter()
}
}
J'ai résolu le problème (du moins pour moi).
Il semble que la jcenter
ait quelques problèmes à fournir les bibliothèques pour le projet (cela peut être temporaire). Comme les personnes suggérées ici, vous pouvez résoudre ce problème en obtenant ces bibliothèques de Maven.
Allez dans votre fichier build.gradle (pour les développeurs ioniques il se trouve dans/plateformes/Android) et ajoutez au-dessus de chaque ligne de code où jcenter()
cette ligne maven { url 'https://maven.google.com' }
est indiquée.
Pour moi, c’est deux endroits: buildscript
et allprojects
. A la fin, le haut de votre fichier build.gradle devrait ressembler à ceci:
apply plugin: 'com.Android.application'
buildscript {
repositories {
maven { url "https://maven.google.com" }
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.0.0'
}
}
allprojects {
repositories {
mavenLocal()
maven { url 'https://maven.google.com' }
jcenter()
}
}
Ce qu'il fait? Il change simplement le fournisseur de bibliothèques (dans ce cas jcenter) avec un autre afin que votre application puisse les télécharger avec succès. Chaque ligne présente un fournisseur de bibliothèques avec solution de secours.
Je ne sais pas pourquoi il n'a pas été remplacé par maven car le fournisseur de secours se trouvait dans mon fichier build.gradle.
Dans Android/build.gradle, modifiez le code en tant que -
allprojects {
repositories {
mavenLocal()
maven { url 'https://maven.google.com' }
jcenter()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url "$rootDir/../node_modules/react-native/Android"
}
}
}
Ce matin j'ai eu le même problème:
Error:Could not resolve all files for configuration ':app:debugAndroidTestRuntimeClasspath'.
Impossible de trouver runtime.jar (Android.Arch.lifecycle: runtime: 1.0.0) . Recherche dans les lieux suivants: https://jcenter.bintray.com/Android/Arch/lifecycle/runtime/1.0.0/runtime-1.0.0.j
Je l'ai corrigé de cette façon: Dans le référentiel de projet, je modifie build.gradle, j'ai commenté jcenter ():
repositories {
// jcenter()
maven {
url "https://maven.google.com"
}
}
Maintenant, le projet se construit avec succès! Bonne chance !
Ceci est un travail pour moi suffit de suivre ces deux étapes
Étape 1: En projet build.gradle fichier suffit de remplacer le code ci-dessous
allprojects {
repositories {
mavenLocal()
maven { url 'https://maven.google.com' }
jcenter()
// google()
}
}
Juste commenter le google() s'il existe dans votre fichier de classe de projet.
Étape 2: Dans le fichier gradle-wrapper.properties déclasser le distributionUrl Je viens de déclasser avec le ci-dessous.
distributionUrl=https\://services.gradle.org/distributions/gradle-4.0-all.Zip
Une nouvelle version de cordova-Android
(7.1.1) a été publiée qui résout ce problème.
Alors supprimez la plate-forme Android actuelle
cordova platform rm Android
Et ajouter la nouvelle plateforme
cordova platform add [email protected]
Il semblerait que le problème est que le pom est répertorié sur jcenter mais que le bocal est manquant.
https://jcenter.bintray.com/Android/Arch/lifecycle/runtime/1.0.0/
Gradle échouera si les métadonnées sont présentes dans un dépôt mais que l'artefact est manquant.
https://github.com/gradle/gradle/issues/1120
La solution de @ Moritz devrait fonctionner en accédant d'abord à maven.google.com.
Je reçois aussi la même erreur.
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:2.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Je n'ai rien changé dans build.gradle.
J'ai supprimé la plate-forme Android, puis ajouté à nouveau: Pour supprimer:
cordova plate-forme rm Android
ajouter:
plate-forme cordova ajouter Android
et tout fonctionne bien maintenant Remarque: cette version d'Android n'a pas été installée correctement cette fois (avant aujourd'hui!)
plate-forme cordova ajouter [email protected]