У меня есть код шаблона для моего приложения "Helloworld", написанный на javascript и реагирующий на Windows.Я подключил свой эмулятор Android и хотел запустить приложение на нем.Следующее происходит, когда я запускаю команду «act-native run-android ».Node.js открывается как отдельное окно, и на нем написано «Загрузка графа зависимостей, готово».Тем не менее, в окне терминала появляется следующее сообщение об ошибке:
>User helloworld $ react-native run-android
Starting JS server...
Building and installing the app on the device (cd android && gradlew.bat installDebug)...
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 1s
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\User\helloworld\node_modules\react-native\local-cli\runAndroid\runAndroid.js:299:19)
at buildAndRun (C:\Users\User\helloworld\node_modules\react-native\local-cli\runAndroid\runAndroid.js:135:12)
at isPackagerRunning.then.result (C:\Users\User\helloworld\node_modules\react-native\local-cli\runAndroid\runAndroid.js:65:12)
at process._tickCallback (internal/process/next_tick.js:68:7)
- Относительно того, подключен ли эмулятор:
$ adb devices
List of devices attached
emulator-5554 device
(работает аналогично для моего смартфона Android).Отладка по USB включена.
-Что касается того, что я пытался решить проблему:
- Мой пользователь назначен администратором.
У меня был JDK11.0.1 версия.Я установил JDK1.8.0_201 и теперь он является моей версией Java.
User helloworld $ java -version
java version "1.8.0_201"
Я создал папку «.gradle» в каталоге моего проекта на случай, если возникнут проблемы с доступом / созданием папок такого типа.
-Я указал путь для sdk.dir в файле local.properties
-Моя ОС - Windows 8.1.Версия Gradle - 4.7.
- Я установил Android Studio, JDK8 и 11.
- Я использую GitBash для терминальных целей.
- У меня есть следующие системные переменные окружения:
ANDROID_HOME = c: \ Users \ User \ AppData \ Local \ Android \ Sdk
GRADLE_HOME = C: \ Users \ User.gradle \ wrapper \ dists \ gradle-4.7-all \ 4cret0dgl5o3b21weaoncl7ys \ gradle-4.7
JAVA_HOME = C: \Программные файлы \ Java \ jdk1.8.0_201
Путь = C: \ Program Files (x86) \ Общие файлы \ Oracle \ Java \ javapath; C: \ Windows \ system32; C: \ Windows;C: \ Windows \ System32 \ Wbem; C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Program Files (x86) \ NVIDIA Corporation \ PhysX \ Common; C: \ Program Files \ Git \ cmd ;.\ Плагины; C: \ Users \ Пользователь \ AppData \ Local \ Programs \ Python \ Python37-32; C: \ Program Files \ nodejs \; c: \ Users \ Пользователь \ AppData \ Local \ Android \ Sdk \ platform-tools;C: \ Users \ Пользователь \ AppData \ Local \ Android \ Sdk \ platform-tools;% GRADLE_HOME% \ bin;% JAVA_HOME% \ bin
В случае, если вас интересует, что было в вопросе ранее: Мой начальныйпроблемабыло то, что просто не было никакой ошибки, но все равно ничего не запускалось на эмуляторе.Я обошел это, поместив папку «android» моего проекта в Android Studio, и он запустил приложение на моем смартфоне.Однако, когда я внес небольшие изменения в App.js, проект не мог быть обновлен из-за какой-то неизвестной ошибки, и я не смог открыть его как новый проект.Поэтому мне пришлось решить эту проблему, пытаясь запустить приложение с помощью «act-native run-android »через терминал, и теперь я нахожусь в таком состоянии.