Не удалось создать службу типа ScriptPluginFactory с использованием BuildScopeServices.createScriptPluginFactory ()act-native.Как исправить? - PullRequest
0 голосов

У меня есть код шаблона для моего приложения "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 »через терминал, и теперь я нахожусь в таком состоянии.

Ответы [ 2 ]

0 голосов
/ 30 января 2019

Хотите ли вы запустить реактивное или чисто Java-приложение, для которого вы должны были использовать Android-студию?

Если для студийного приложения: вы должны включить опции разработчика со своего телефона, чтобы включить эту проверкуэто:

https://www.samsung.com/uk/support/mobile-devices/how-do-i-turn-on-the-developer-options-menu-on-my-samsung-galaxy-device/

0 голосов
/ 30 января 2019

Мммм ... когда вы запускаете response-native run-android на консоли, 1 он должен проверить, есть ли у вас Android SDK, во-вторых, он должен скомпилировать некоторые вещи, и в-третьих, он должен запустить metro bundler в ДРУГОЙ консоли.«Загрузка графа зависимостей, выполнено» должна появиться на этой ДРУГОЙ консоли, в то время как главная консоль все еще будет компилироваться в течение минуты или даже больше ... тогда она запустит намерение и откроет приложение.Иногда он просто отображает пустой экран после первой загрузки, поэтому вы должны выйти из приложения и удалить его из последних записей, а затем снова открыть приложение

Опубликовать снимки экрана. Похоже, что вы видите только эту дополнительную консоль, в то время как основная консольне отображается (?)

...