Не удалось найти переменную среды 'ANDROID_HOME', даже если переменная установлена ​​Cordova - PullRequest
0 голосов
/ 21 апреля 2020

Я пытаюсь создать мобильное приложение из своего приложения angular и использую Cordova для преобразования веб-приложения в мобильное. Я выполнил все требования, изложенные в официальном руководстве apache cordova , и установил Android studio, а также это онлайн-руководство .

Я также следовал этому учебнику YouTube, в котором объяснялось, как легко преобразовать приложение angular в приложение Cordova, используя следующие шаги:

- Create a cordova project within the angular project using cordova create <proj_name>
- Create a soft link, adding a link between www folder in cordova project and dist folder of angular project
- Create build
- Add android to cordova project
- Cordova run android

Все идет хорошо, пока cordova run android, где он выдает мне следующую ошибку:

Failed to find 'ANDROID_HOME' environment variable. Try setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.

Я проверил наличие в стеке потока любых ошибок, и на самом деле было несколько подобных проблем, которые должны были быть решены путем редактирования ~ /. bashr c файл и добавление:

export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools

Однако, даже после выхода из системы и повторного входа в систему несколько раз, также не помогло использование source ~/.bashrc, продолжает появляться та же ошибка. Я также установил android studio и проверил все пути, которые Sdk установил и показывает на Sdk Manager в студии.

Если я попытаюсь ввести android в терминале, это выдаст мне неизвестную ошибку команды, то же самое идет с sdkmanager.

, когда я запускаю echo $ANDROID_HOME, он дает мне правильный путь:

/home/username/Android/Sdk

, когда я запускаю cordova requirements, он дает мне следующее:

Requirements check results for android:
Java JDK: installed 1.8.0
Android SDK: installed true
Android target: not installed 
android: Command failed with exit code ENOENT
Gradle: installed /opt/gradle/gradle-5.2.1/bin/gradle
Some of requirements check failed

запуск cordova platform version android в проекте дает следующее:

form version android
Installed platforms:
  android 8.1.0
Available platforms: 
  browser ^6.0.0
  electron ^1.0.0
  ios ^5.0.0
  osx ^5.0.0
  windows ^7.0.0

Я не понимаю, что, кажется, отсутствует? Я посмотрел несколько раз, но не могу найти проблему с моей установкой. Я делаю что-то наивное здесь?

1 Ответ

0 голосов
/ 22 апреля 2020

Для тех, кто столкнулся с той же проблемой: по какой-то причине данные выбирались из npm cache. Чтобы прояснить это, просто:

sudo npm cache clean -f

Возможно, не лучший подход, но пока это был единственный выход

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