Lors du développement d'une application, je suis tombé sur l'erreur suivante. J'ai essayé de rétrograder la version Java de 11 à 8, mais cela n'a pas été utile.
FAILURE: Build failed with an exception.
* What went wrong:
Could not create service of type ScriptPluginFactory using BuildScopeServices.createScriptPluginFactory().
> Could not create service of type PluginResolutionStrategyInternal using BuildScopeServices.createPluginResolutionStrategy().
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 15s
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/getting-started.html
Command failed: gradlew.bat installDebug
Error: Command failed: gradlew.bat installDebug
at checkExecSyncError (child_process.js:616:11)
at Object.execFileSync (child_process.js:634:13)
at runOnAllDevices (C:\Users\samie\Documents\React Native\auth\node_modules\react-native\local-cli\runAndroid\runAndroid.js:299:19)
at buildAndRun (C:\Users\samie\Documents\React Native\auth\node_modules\react-native\local-cli\runAndroid\runAndroid.js:135:12)
at isPackagerRunning.then.result (C:\Users\samie\Documents\React Native\auth\node_modules\react-native\local-cli\runAndroid\runAndroid.js:65:12)
at process._tickCallback (internal/process/next_tick.js:68:7)
Essayez d'exécuter cette commande dans votre fichier de projet
react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res
après ça
cd (path to project/Android folder) && gradlew clean && cd .. && react-native run-Android
toujours gradlew clean avant d'exécuter react-native-run-Android la commande ci-dessus nettoie fondamentalement le gradle et les versions précédentes.
pour l'erreur ENOENT Vérifiez si $ yarn start
travaux. Le bundler metro n'a pas pu fonctionner sur le port 8081 pour moi et je devais exécuter $ killall node
ÉDITER:
Mettez également à jour le gradle-wrapper.properties
ajouter
distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-all.Zip
supprimer le code suivant de build.gradle
:
task wrapper(type: Wrapper) {
gradleVersion = '5.2.1'
distributionUrl = distributionUrl.replace("bin", "all")
}
après ça
cd (path to project/Android folder) && gradlew clean && cd .. && react-native run-Android
toujours gradlew clean avant d'exécuter react-native-run-Android la commande ci-dessus nettoie fondamentalement le gradle et les versions précédentes.
Vous êtes prêt à partir!
Comment j'ai résolu ce problème:
Tout d'abord, assurez-vous que j'ai% Java_home% variable set et que% path% a le Java sdk inclus. Comment configurer Java environnement variables
Ensuite, allez dans votre dossier Android et exécutez cette commande:
C:\Projects\myproject\Android>gradlew.bat app:installDebug.
Décompressez C:\Users\codeb.gradle\wrapper\dists\gradle-4.10.2-all\9fahxiiecdb76a5g3aw9oi8rv\gradle-4.10.2-all.Zipez vers C:\Users\codeb.gradle\wrapper\dists\gradle-4.10 .2-all\9fahxiiecdb76a5g3aw9oi8rv Exception dans le thread "principal" Java.util.Zip.ZipException: erreur lors de l'ouverture du fichier Zip à Java.util.Zip.ZipFile.open (méthode native) à Java.util.Zip.ZipFile. (ZipFile .Java: 225) sur Java.util.Zip.ZipFile. (ZipFile.Java:155) sur Java.util.Zip.ZipFile. (ZipFile.Java:169) sur org.gradle.wrapper.Install.unzip (Installer. Java: 215) sur org.gradle.wrapper.Install.access 600 $ (Install.Java:27) sur org.gradle.wrapper.Install $ 1.call (Install.Java:75) sur org.gradle.wrapper.Install $ 1. appelez (Install.Java:48) à org.gradle.wrapper.ExclusiveFileAccessManager.access (ExclusiveFileAccessManager.Java:69) à org.gradle.wrapper.Install.createDist (Install.Java:48) à org.gradle.wrapper.WrapperExecutor .execute (WrapperExecutor.Java:107) sur org.gradle.wrapper.GradleWrapperMain.main (GradleWrapperMain.Java:61)
Comme vous pouvez le voir, mon téléchargement de Gradle est corrompu. Tout ce que vous avez à faire est de supprimer ce dossier et de réexécuter la commande.
C:\Projects\myproject\Android>gradlew.bat app:installDebug
Téléchargement https://services.gradle.org/distributions/gradle-4.10.2-all.Zip ..................... .................................................. ........................................ Décompression C:\Users\codeb.gradle\wrapper\dists\gradle-4.10.2-all\9fahxiiecdb76a5g3aw9oi8rv\gradle-4.10.2-all.Zip to C:\Users\codeb.gradle\wrapper\dists\gradle-4.10.2-all\9fahxiiecdb76a5g3aw9oi8rv
Bienvenue dans Gradle 4.10.2!
Voici les points forts de cette version: - Incrémentielle Java par défaut - Nettoyage périodique des caches Gradle - Gradle Kotlin DSL 1.0-RC6 - Constructions incluses imbriquées - Versions du plugin SNAPSHOT dans le
plugins {}
bloquerPour plus de détails, voir https://docs.gradle.org/4.10.2/release-notes.html
Maintenant, vous pouvez revenir à votre projet natif React et exécuter
react-native run-Android
info Le serveur JS est déjà en cours d'exécution. info Construire et installer l'application sur l'appareil (cd Android && gradlew.bat app: installDebug) ...
Tâche: application: installDebug 01:03:18 V/ddms: exécution: exécution am get-config 01:03:18 V/ddms: exécution de 'am get-config' sur 'emulator-5554': EOF hit. Lire: -1 01:03:18 V/ddms: exécuter: retourner Installer l'APK 'app-debug.apk' sur 'Pixel_2_API_28 (AVD) - 9' pour l'application: debug 01:03:18 D /app-debug.apk: Téléchargement de app-debug.apk sur le périphérique 'emulator-5554' 01:03:18 D/Device: Téléchargement du fichier sur le périphérique 'emulator-5554' 01:03:18 D/ddms: Lecture de la permission du fichier de C:\Projects\xx\Android\app\build\outputs\apk\debug\app-debug.apk comme: rwx ------ 01:03:18 V/ddms: exécutez: exécutez pm install -r -t "/data/local/tmp/app-debug.apk" 01:03:19 V/ddms: exécutez 'pm install -r -t "/data/local/tmp/app-debug.apk"' on ' emulator-5554 ': EOF hit. Read: -1 01:03:19 V/ddms: execute: return 01:03:19 V/ddms: execute: running rm "/ data/local/tmp/app-debug.apk "01:03:19 V/ddms: exécutez 'rm" /data/local/tmp/app-debug.apk "' sur 'emulator-5554': EOF hit. Lecture: -1 01:03:19 V/ddms: exécution: retour Installé sur 1 appareil.
CONSTRUISEZ AVEC SUCCÈS en 9s 27 tâches exécutables: 1 exécutée, 26 informations à jour Exécution de C:\Users\codeb\AppData\Local\Android\Sdk/platform-tools/adb -s emulator-5554 reverse tcp: 8081 tcp: 8081 info Démarrage de l'application sur l'émulateur-5554 (C:\Users\codeb\AppData\Local\Android\Sdk/platform-tools/adb -s emulator-5554 Shell am start -n com.myproject/com.myproject.MainActivity) ... Démarrage: Intention {cmp = com.myproject/.MainActivity}
J'ai également eu ce problème et j'ai pu le résoudre en créant un nouveau projet dans react-native 0.57.3 à l'aide de la commande: react-native init --version="0.57.3" MyNewApp
Vous devez mettre à jour le fichier gradle-wrapper.properties pour utiliser la dernière version de gradle:
distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-all.Zip
Et supprimez ce bloc du fichier build.gradle:
task wrapper(type: Wrapper) {
gradleVersion = '5.2.1'
distributionUrl = distributionUrl.replace("bin", "all")
}
Ensuite, exécutez un gradlew clean sur le dossier Android et tout devrait fonctionner.
J'ai eu ce problème moi-même, il a finalement disparu après avoir désinstallé et réinstallé Android studio et gradle, mais quelques autres choses que vous pouvez essayer en premier)
1: Définition de GRADLE_USER_HOME dans les variables d'environnement (si sur Windows)
2: rétrogradation vers 0.57.0 natif réactif
3: Assurez-vous que vous disposez des autorisations appropriées pour exécuter la commande et accéder aux fichiers
4: Assurez-vous que vos fichiers Gradle sont synchronisés correctement et que l'emplacement de Gradle et le Android skd sont corrects dans le mode hors ligne de la structure du projet
5: Vérifiez Gradle pour les mises à jour
(En supposant que vous utilisez Android studio)
Bonne chance
Le problème est dans le dossier:
nameyourapp/Android/local.properties
vous devez remplacer par le chemin correct: /Users/nameUser/AppData/Local/Android/sdk
ouvrez votre fichier 'settings.grandler' dans le dossier Android
changer le '\' en '/'
enregistrez le fichier
exécutez la commande 'react-native run-Android