Не удалось определить версию Java из '11 .0.1 'при запуске «npm run android» - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь запустить реагировать родной на Windows 10. Когда я запускаю npm, запустить Android, я получаю следующую ошибку

Запуск JS-сервера ... Сборка и установка приложения на устройстве (cd android && gradlew.bat installDebug) ...

FAILURE: сборка не удалась, исключение.

  • Что пошло не так: Не удалось определить версию Java из '11 .0.1 '.

  • Попытка: Запустите с параметром --stacktrace, чтобы получить трассировку стека. Запустите с параметром --info или --debug, чтобы получить больше вывода журнала. Запустите с --scan, чтобы получить полное представление.

  • Получите дополнительную помощь по номеру https://help.gradle.org Не удалось установить приложение на устройство, ознакомьтесь с информацией об ошибке выше. Убедитесь, что у вас запущен эмулятор Android или устройство подключено и настроить среду разработки Android: https://facebook.github.io/react-native/docs/getting-started.html

Ответы [ 3 ]

0 голосов
/ 27 ноября 2018

Android иногда не поддерживает последнюю версию JAVA.

Я рекомендую использовать JAVA 8 , который является самой стабильной версией для Android.

-

Перейдите по ссылке, чтобы установить JDK и снова обновить JAVA_HOME

https://docs.oracle.com/cd/E19182-01/820-7851/inst_cli_jdk_javahome_t/

(игнорировать заголовок внутри ссылки, просто следуйте инструкциям внизу)

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

TL; DR Понизьте вашу версию Java до Java 8.

Когда-то между Java 9 и Java 11 формат java -version изменился, что привело к сбою в Gradle.

Gradle как версии 1.x:

Как я тестировал:

λ ~/m-demo/ master jenv versions
  system
  11.0
  11.0.1
  1.8
* 1.8.0.191 (set by ~/.jenv/version)
  openjdk64-11.0.1
  openjdk64-1.8.0.191
0 голосов
/ 31 октября 2018

Убедитесь, что вы указали необходимые пути для Android и Java в своей оболочке.

JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home
ANDROID_HOME=/Users/username/Library/Android/sdk
ANDROID_NDK_HOME=/Users/username/Library/Android/sdk/ndk-bundle

Кроме того, иногда реактивные версии могут испортиться с версиями Java, поэтому пока не рекомендуется использовать Java SDK 11, поэтому лучше Java 8, а это более стабильная версия.

Попробуйте удалить Java SDK 11 и установить Java 8, затем обновите пути в конфигурации оболочки, чтобы они соответствовали правильному расположению, затем повторите попытку, и ваше приложение должно работать, как и ожидалось.

Если вы установили Java через homebrew, попробуйте:

brew cask uninstall java
brew tap caskroom/versions
brew cask install java8

И все готово.

Если вы установили его напрямую, попробуйте rm -rf /Library/Java/JavaVirtualMachines/jdk<version>.jdk удалить его, а затем загрузите Java 8 напрямую или через homebrew (рекомендуется).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...