ОК. У меня была такая же проблема, но я не смог загрузить версию 1.8, так как она скрывается под другим именем. Его 8u152. Через пару часов я нашел его здесь: oracle.com/technetwork/java/javase/downloads/…
user2367101
Ответы:
58
Удалите все предыдущие JDK, включая 1.8 Установите JDK 1.8
@Urbycoz вам просто нужно пойти Add or Remove Programs/Program Featuresв Windows OS. Затем удалите все предыдущие версии Java. У меня version 7также был установлен, и после uninstallingэтого cordova run androidработал. Удачи.
Aakash
1
Но что это значит? Как Cordova выбирает JDK, если установлены разные JDK. Может быть, у вас может быть только один JDK (например, машина для сборки)?
Bruno Ranschaert
вам все еще нужно установить переменные envionment, чтобы Кордова могла найти путь к вашему JDK superuser.com/questions/949560/…
Ивонн Абурроу
19
@MadNeox удаление другой версии - это просто обходной путь, а не решение,
Ганди
сделал трюк для меня. перешел в appwiz.cpl (из windows cmd) и удалил java 7 и java sdk 7.
Ortiz
53
В Linux (Debian / Ubuntu) это можно решить, выбрав Java 1.8 SDK в
sudo update-alternatives --config javac
JAVA_HOMEПрямое изменение переменной env, похоже, не имеет никакого эффекта.
РЕДАКТИРОВАТЬ: ответ на комментарии: это, вероятно, как-то связано с тем фактом, что новые установки Java Debian (и, по-видимому, Ubuntu) через диспетчер пакетов не используют JAVA_HOMEпеременную окружения для определения местоположения JRE. См. Этот и этот пост для получения дополнительной информации.
Вы сделали мой день. Я все перепробовал за последние несколько дней. Tnx много. Но почему только это работает? Почему установка переменной не действует?
my-
1
У меня тоже работало на Ubuntu ... Я сделал это для, javaно нет javac! Теперь не нужно удалять Java 9 :)
hughjdavey
То же замечание и здесь. Хотя JAVA_HOMEуказывал на правый 1.8 JDK, Кордова удовлетворила только обновление системы по умолчанию.
myoan
1
При выполнении sudo update-alternatives --config javac В группе ссылок javac есть только одна альтернатива (предоставляющая / usr / bin / javac): / usr / lib / jvm / java-11-openjdk-amd64 / bin / javac Ничего не настраивать . Мне нужно вернуться к java-8-openjdk, есть ли возможность это сделать?
Taieb
Почему это решение в ubuntu. Как и сказал myoan, почему обновление системы по умолчанию удовлетворило кордову?
Джитин
40
Вам не нужно удалять какую-либо более позднюю версию sdk. просто установите jdk1.8.0_161 или не устанавливайте, если он уже установлен.
Теперь просто установите JAVA_HOMEпеременную USER (не системную переменную), как показано на изображении ниже.
Таким образом, вам не нужно удалять более новую версию, и проблема будет решена.
У вас может быть версия старше 8, но Cordova поддерживает только JDK 1.8. Просмотреть эту ссылку Документация Кордовы
Я взглянул на фрагмент кода, который на самом деле проверяет номер версии вашего java. Найдите следующее: module.exports.check_java в платформах / android / cordova / lib / check_reqs.js . в строке 220. Вы увидите регулярное выражение и комментарий, оставленный командой, о том, что Java 10 будет поддерживаться в будущем.
Существующее регулярное выражение завершится ошибкой, если оно будет запущено с последними версиями Java, такими как Java 10. Это потому, что Java 8 или 9 сохраняются в следующем формате: 1. [8-9]. ** но Java 10 сохраняется как 10. **, а регулярное выражение ищет версию в формате 1. [8-9]. **
// Let's check for at least Java 8, and keep it future proof so we can support Java 10
var match = /javac ((?:1\.)(?:[8-9]\.)(?:\d+))|((?:1\.)(?:[1-9]\d+\.)(?:\d+))/i.exec(output);
Мое решение:
Вам не нужно удалять текущую версию JRE или JDK, поскольку установщик устанавливает каждую версию в определенной папке.
Удаление старых версий JDK сработало бы. Но я думаю, это может быть обходной путь. Я столкнулся с той же проблемой и заметил, что как новая версия JDK, так и путь JDK более старой версии были упомянуты в 'pathпеременной среды.
Удаление пути JDK старой версии из 'pathпеременной окружения помогло мне. Надеюсь, это тоже кому-то поможет.
Да, я могу запустить команду сборки с этим, но все еще борюсь с командой запуска 'ionic cordova run android', показывая ошибку INSTALL FAILED UPDATE INCOMPATIBLE.
supriya chauhan
@supriyachauhan, вы можете попробовать переустановить все заново. В противном случае вам, возможно, придется предоставить подробные детали, чтобы сузить проблему
Ганди
9
Я понял, что моя переменная среды пути указывала на java 1.7, а JAVA_HOME указала на 1.8, поэтому я отредактировал переменную пути до 1.8, и все было в порядке.
в моем случае JAVA_HOME указывал на C: \ Program Files (x86) \ Java \ jdk1.7.0_55
когда я написал, где java в cmd, он вывел C: \ Program Files (x86) \ Java \ jdk1.7.0_55 вместе с путем java.exe, я изменил переменную JAVA_HOME с переменных среды на C: \ Program Files \ Java \ jdk1.8.0_20, и это сработало, поэтому кажется, что у меня было 2 экземпляра jdk, а для Cordova нужен v1.8. * one.
Проверьте, на что указывает ваша переменная Path. У меня JAVA_HOME указывал на 1.8, но в Path он указывал на другую версию. Работал нормально после того, как я выровнял два!
ahb 04
6
MAC: перейдите в: / Library / Java / JavaVirtualMachines. Убедитесь, что у вас есть только jdk1.8.0_201.jdk. Если у вас их много, удалите другой JDK.
Ребят, чтобы на винде получился микс , нужно сделать следующее
Загрузите и установите любую версию JDK 1.8 или выше.
Откройте переменные среды, создайте переменную среды с именем JAVA_HOME и установите значение пути установки JDK.
C:\Program Files\Java\jdk1.8.0_162
убедитесь, что вы не добавили \binв значение.
В переменной системного пути поставьте точку с запятой ;и добавьте это значение в системный путь, например, C:\Program Files\Java\jdk1.8.0_162\bin;здесь \binдобавляется.
Примечание. Переменные среды сложны. Предполагается, что они закрываются символом ; перед открытием другого. Вот почему мы ставим один перед добавлением значения и один после значения, чтобы закрыть его.
Теперь закройте терминал и снова откройте, затем выполните предыдущие команды.
Сегодня я также получил эту ошибку Cordova : Requirements check failed for JDK 1.8 or greaterв своей Mac OS при создании приложения Ionic, когда я запускаю команду ionic cordova build --release androidчерез терминал.
Обратите внимание, что, несмотря на то, что говорится в сообщении, похоже, что это означает, что ему нужна версия 1.8, и выдает это сообщение, если у вас более поздняя версия.
Далее следуют мои предыдущие попытки, которые привели меня к приведенному выше ответу, который затем сработал ... Возможно, вам придется сделать что-то другое в зависимости от того, что установлено, поэтому, возможно, эти примечания могут помочь:
Это означает, что я могу переопределить /usr/bin/javac... см. Команды в верхней части ответа ...
Команда для установки jdk1.8 с использованием lnв верхней части этого ответа - это то, что сработало для меня.
Это сообщение об ошибке сбивает пользователя с толку, экран успеха показан ниже.
Сообщение об ошибке заставляет пользователя попытаться исправить сбой сборки с помощью конфигурации JAVA_HOME. Но настоящая проблема не только в JAVA_HOME.
Я исправляю эту проблему с помощью правильной конфигурации в JAVA_HOME и пути в «системной переменной».
Надеюсь, что поможет решить проблему, но не переустанавливает JDK.
Ответ, отправленный MadNeox, правильный. Я столкнулся с аналогичной проблемой, у меня был установлен jdk 9, а также версия 1.8
Сначала я попытался сохранить jdk 9 и удалить 1.8, он отобразит ошибку. Проверка требований не удалась.
Затем я попытался удалить jdk9 и переустановить 1. на этот раз он показывал, что не удалось запустить javac-version.
Поигравшись с переменными среды в течение некоторого времени, я наконец получил решение
На данный момент моя система имеет только версию jdk 1.8 Cordova: 7.1.0
-Открыть вкладку переменных среды -Под пользовательскими переменными создать новую переменную PATH-дать ей следующее значение C: \ Program Files \ Java \ jdk1.8.0_151 \ bin (может измениться в зависимости от того, где вы установили свой jdk)
Это должно решить вашу проблему. Надеюсь, это поможет.
Хотя ответ уже был дан, мне потребовалось некоторое время, чтобы понять, где я ошибаюсь, поэтому решил опубликовать его, надеясь, что это сэкономит чужое время.
Просто убедитесь, что те же версии JDK (то есть 1.8 в данном случае) доступны из PATHпеременной окружения и JAVA_HOME. Пример: Если,
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_152то
PATHпеременная также должна содержать указанный выше путь и, что важно, перед любым (если есть) другим путем, если JDK / JRE уже упоминается в PATHпеременной. Вы можете удалить другие версии, если ни одно другое приложение не использует другую версию java.
Если у вас установлены и jdk8, и jdk9, вы должны проверить, какая версия
в пути и куда указывает JAVA_HOME.
В опубликованном вами журнале я вижу, что JAVA_HOME ведет к JDK9.
измените свой globel JAVA_HOME env var на целевой JDK8 или вы можете изменить JAVA_HOME в powershell, прежде чем использовать Cordova CLI, если вы хотите использовать jdk8 только для Cordova:
Я столкнулся с той же проблемой с jdk1.8.0_201. Она была решена, когда я сделал JAVA_HOME = C: \ Program Files \ Java \ jdk1.8.0_201 и добавил "C: \ Program Files \ Java \ jdk1.8.0_201 \ bin" в переменная пути
У меня установлены (Open) JDK 8 и 11 в Windows 10, и у меня была такая же проблема. Для меня сработало следующее:
Установите JAVA_HOME так, чтобы он указывал на JDK 8. (упоминалось во многих ответах раньше.) И
Удалите (!) JDK 11 из PATH, как выяснилось, несмотря на отображение пути JAVA_HOME, указывающего на JDK 8, Кордова фактически получила доступ к JDK 11, который был включен в PATH, что привело к сбою проверки версии Java.
Это старый вопрос, но поскольку у меня была такая же проблема, но у ошибки был другой источник, вот краткий ответ.
Проблема возникла в Windows (только) и в среде IDE Webstorm 2019.2
В версии 2019.2 у Webstorm была проблема, потому что он внутренне использовал открытый jdk для переменной% JAVA_HOME% вместо целевого java jdk (из ОС).
В моем случае (да, он старый, это старый проект кордовы ...)
выполнение java -versionв Windows cmd.exe:
$ java -version
java version "1.8.0_221"
но выполняется java -versionв терминале Webstorms:
$ java -version
openjdk version "11.0.3" 2019-04-16
// more output
Исправление появилось с патчем, выпущенным позже (сегодня), версии 2019.2.1. Теперь Webstorm использует переменную os% JAVA_HOME%, как и должно, и java -versionрезультат в обоих случаях идентичен.
Ошибка возникает, когда для пути по умолчанию к java задана версия, отличная от Java 8 или JDK 1.8. *
В моем случае я установил Java 11 после установки Java 8.
Вы можете протестировать, запустив:
java -version
В моем случае он вернулся:
java version "11.0.8" 2020-07-14 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.8+10-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.8+10-LTS, mixed mode)
Чтобы исправить это, нам нужно убедиться, что путь java указывает на двоичные файлы Java 8 вместо
Предполагая, что у вас уже установлена Java 8 или JDK 1.8. *:
Убедитесь, что JAVA_HOME и JRE_HOME установлены (убедитесь, что он указывает на Java 1.8. *)
Внутри PATH убедитесь, что %JAVA_HOME%\binили C:\Program Files\Java\jdk1.8.0_251\binдобавлено
Источник проблемы: моя установка JDK 11 добавила две записи PATH прямо вверху, имея приоритет или переопределив %JAVA_HOME%\binPATH, который указывает на JDK 1.8. *
Не добавляйте их, если у вас их нет, найдите другие записи PATH, которые могут переопределить %JAVA_HOME%\bin
Нажмите «Переместить вниз», чтобы переопределить записи, пока они не окажутся ниже %JAVA_HOME%\bin
%JAVA_HOME%\bin PATH, указывающий на Java 8, теперь будет иметь приоритет над другими записями PATH, указывающими на JDK 11.
Сохраните, откройте новый терминал и запустите
java -version
В моем случае он вернулся:
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
Кажется, что Android SDK не поддерживает Java 9. Понизьте версию до 8, если вы не хотите полностью возвращаться к JDK 1.8, что для меня смешно. JDK 8 работает для меня, но обязательно правильно установите переменную среды JAVA_HOME в место установки JDK.
Согласно официальной документации Cordova, он поддерживает только JDK 1.8 не старше даты (апрель 2018 г.) . Или может быть проблема со скриптом определения версии в кордове.
На моей машине конфигурация java и javac была несовместимой: java указывал на JDK 9, а javac указывал на JDK 8. Установка обоих на JDK 8 устранила проблему.
ominug
0
Я использую окна и имею две версии jdk 1.8 и 14 ...
Столкнулся с той же проблемой и после некоторой отладки нашел решение.
правильно установите JAVA_HOME.
Измените значение пользовательской переменной PATH на новую версию jdk (1.8).
Измените значение пользовательской переменной PATH на новую версию jdk (1.8).
Ответы:
Удалите все предыдущие JDK, включая 1.8 Установите JDK 1.8
источник
Add or Remove Programs/Program Features
вWindows OS
. Затем удалите все предыдущие версии Java. У меняversion 7
также был установлен, и послеuninstalling
этогоcordova run android
работал. Удачи.В Linux (Debian / Ubuntu) это можно решить, выбрав Java 1.8 SDK в
JAVA_HOME
Прямое изменение переменной env, похоже, не имеет никакого эффекта.РЕДАКТИРОВАТЬ: ответ на комментарии: это, вероятно, как-то связано с тем фактом, что новые установки Java Debian (и, по-видимому, Ubuntu) через диспетчер пакетов не используют
JAVA_HOME
переменную окружения для определения местоположения JRE. См. Этот и этот пост для получения дополнительной информации.источник
java
но нетjavac
! Теперь не нужно удалять Java 9 :)JAVA_HOME
указывал на правый 1.8 JDK, Кордова удовлетворила только обновление системы по умолчанию.Вам не нужно удалять какую-либо более позднюю версию sdk. просто установите jdk1.8.0_161 или не устанавливайте, если он уже установлен.
Теперь просто установите
JAVA_HOME
переменную USER (не системную переменную), как показано на изображении ниже.Таким образом, вам не нужно удалять более новую версию, и проблема будет решена.
источник
Что сработало, так это удаление jdk 9 и переустановка jkd 8.x
На Mac для удаления перейдите в терминал и выполните следующие действия:
Затем установите jdk 8.x, загрузив пакет .dmg из Oracle.
источник
У вас может быть версия старше 8, но Cordova поддерживает только JDK 1.8. Просмотреть эту ссылку Документация Кордовы
Я взглянул на фрагмент кода, который на самом деле проверяет номер версии вашего java. Найдите следующее: module.exports.check_java в платформах / android / cordova / lib / check_reqs.js . в строке 220. Вы увидите регулярное выражение и комментарий, оставленный командой, о том, что Java 10 будет поддерживаться в будущем.
Существующее регулярное выражение завершится ошибкой, если оно будет запущено с последними версиями Java, такими как Java 10. Это потому, что Java 8 или 9 сохраняются в следующем формате: 1. [8-9]. ** но Java 10 сохраняется как 10. **, а регулярное выражение ищет версию в формате 1. [8-9]. **
Мое решение:
Вам не нужно удалять текущую версию JRE или JDK, поскольку установщик устанавливает каждую версию в определенной папке.
1- Установить версию Java 8 Перейдите по этой ссылке
2- Обновите переменные среды:
указав им место, где были установлены JRE 8 и JDK 8.
Откройте новый сеанс терминала и запустите команду, которая завершилась ошибкой. Теперь он должен работать.
Не работает?
В случае сбоя по другим причинам возможный процесс отладки:
источник
Удаление старых версий JDK сработало бы. Но я думаю, это может быть обходной путь. Я столкнулся с той же проблемой и заметил, что как новая версия JDK, так и путь JDK более старой версии были упомянуты в
'path
переменной среды.Удаление пути JDK старой версии из
'path
переменной окружения помогло мне. Надеюсь, это тоже кому-то поможет.источник
Я понял, что моя переменная среды пути указывала на java 1.7, а JAVA_HOME указала на 1.8, поэтому я отредактировал переменную пути до 1.8, и все было в порядке.
источник
в моем случае JAVA_HOME указывал на C: \ Program Files (x86) \ Java \ jdk1.7.0_55
когда я написал, где java в cmd, он вывел C: \ Program Files (x86) \ Java \ jdk1.7.0_55 вместе с путем java.exe, я изменил переменную JAVA_HOME с переменных среды на C: \ Program Files \ Java \ jdk1.8.0_20, и это сработало, поэтому кажется, что у меня было 2 экземпляра jdk, а для Cordova нужен v1.8. * one.
источник
MAC: перейдите в: / Library / Java / JavaVirtualMachines. Убедитесь, что у вас есть только jdk1.8.0_201.jdk. Если у вас их много, удалите другой JDK.
источник
Я согласен с @Hozington. Это должно быть ошибкой в коде Кордовы для определения версии Java. Что я сделал:
JAVA_HOME
путь к JDK 8, а также изменитеpath
переменную.cordova build
снова запустите .И ошибка исчезла!
источник
если у вас много версий JDK, вы можете запустить
перед сборкой кордовы, чтобы использовать конкретную версию jdk :)
источник
Ребят, чтобы на винде получился микс , нужно сделать следующее
C:\Program Files\Java\jdk1.8.0_162
убедитесь, что вы не добавили\bin
в значение.;
и добавьте это значение в системный путь, например,C:\Program Files\Java\jdk1.8.0_162\bin;
здесь\bin
добавляется.источник
Иногда меняется путь и
java-home
не получается. Вам нужно добавитьк пути переменной среды.
источник
Сегодня я также получил эту ошибку
Cordova : Requirements check failed for JDK 1.8 or greater
в своей Mac OS при создании приложения Ionic, когда я запускаю командуionic cordova build --release android
через терминал.Команда ниже решает мою проблему: -
Надеюсь, это поможет кому-то в будущем!
источник
Ответ MacOS с несколькими установленными версиями Java и не требует удаления
Покажите, какие версии Java я установил:
Чтобы установить его на мою версию jdk1.8:
$ ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac /usr/local/bin/javac
Чтобы установить его на мою версию jdk11:
$ ln -s /Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac /usr/local/bin/javac
-------------------------------------------------- -----------------------
Обратите внимание, что, несмотря на то, что говорится в сообщении, похоже, что это означает, что ему нужна версия 1.8, и выдает это сообщение, если у вас более поздняя версия.
Далее следуют мои предыдущие попытки, которые привели меня к приведенному выше ответу, который затем сработал ... Возможно, вам придется сделать что-то другое в зависимости от того, что установлено, поэтому, возможно, эти примечания могут помочь:
Установите его на мою версию jdk1.8
$ export PATH=/Library/Java/JavaVirtualMachines/jdk-11.0.7.jdk/Contents/Home/bin/javac:$PATH
Установите его на мою версию jdk11
$ export PATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home/bin/javac:$PATH
... но на самом деле это не работает, потому что
/usr/bin/javac
это все еще то, что выполняется первым:... чтобы увидеть, что запускается первым на пути:
Это означает, что я могу переопределить
/usr/bin/javac
... см. Команды в верхней части ответа ...Команда для установки jdk1.8 с использованием
ln
в верхней части этого ответа - это то, что сработало для меня.источник
Это сообщение об ошибке сбивает пользователя с толку, экран успеха показан ниже.
Сообщение об ошибке заставляет пользователя попытаться исправить сбой сборки с помощью конфигурации JAVA_HOME. Но настоящая проблема не только в JAVA_HOME.
Я исправляю эту проблему с помощью правильной конфигурации в JAVA_HOME и пути в «системной переменной».
Надеюсь, что поможет решить проблему, но не переустанавливает JDK.
источник
Ответ, отправленный MadNeox, правильный. Я столкнулся с аналогичной проблемой, у меня был установлен jdk 9, а также версия 1.8
Сначала я попытался сохранить jdk 9 и удалить 1.8, он отобразит ошибку. Проверка требований не удалась.
Затем я попытался удалить jdk9 и переустановить 1. на этот раз он показывал, что не удалось запустить javac-version.
Поигравшись с переменными среды в течение некоторого времени, я наконец получил решение
На данный момент моя система имеет только версию jdk 1.8 Cordova: 7.1.0
-Открыть вкладку переменных среды -Под пользовательскими переменными создать новую переменную PATH-дать ей следующее значение C: \ Program Files \ Java \ jdk1.8.0_151 \ bin (может измениться в зависимости от того, где вы установили свой jdk)
Это должно решить вашу проблему. Надеюсь, это поможет.
Хотя ответ уже был дан, мне потребовалось некоторое время, чтобы понять, где я ошибаюсь, поэтому решил опубликовать его, надеясь, что это сэкономит чужое время.
источник
Просто убедитесь, что те же версии JDK (то есть 1.8 в данном случае) доступны из
PATH
переменной окружения иJAVA_HOME
. Пример: Если,JAVA_HOME=C:\Program Files\Java\jdk1.8.0_152
тоPATH
переменная также должна содержать указанный выше путь и, что важно, перед любым (если есть) другим путем, если JDK / JRE уже упоминается вPATH
переменной. Вы можете удалить другие версии, если ни одно другое приложение не использует другую версию java.источник
Если у вас установлены и jdk8, и jdk9, вы должны проверить, какая версия
в пути и куда указывает JAVA_HOME.
В опубликованном вами журнале я вижу, что JAVA_HOME ведет к JDK9.
измените свой globel JAVA_HOME env var на целевой JDK8 или вы можете изменить JAVA_HOME в powershell, прежде чем использовать Cordova CLI, если вы хотите использовать jdk8 только для Cordova:
источник
Если у вас установлено несколько версий Java и вам нужно их сохранить, вам необходимо проверить следующее:
источник
Я столкнулся с той же проблемой с jdk1.8.0_201. Она была решена, когда я сделал JAVA_HOME = C: \ Program Files \ Java \ jdk1.8.0_201 и добавил "C: \ Program Files \ Java \ jdk1.8.0_201 \ bin" в переменная пути
источник
У меня установлены (Open) JDK 8 и 11 в Windows 10, и у меня была такая же проблема. Для меня сработало следующее:
источник
Это старый вопрос, но поскольку у меня была такая же проблема, но у ошибки был другой источник, вот краткий ответ.
Проблема возникла в Windows (только) и в среде IDE Webstorm 2019.2
В версии 2019.2 у Webstorm была проблема, потому что он внутренне использовал открытый jdk для переменной% JAVA_HOME% вместо целевого java jdk (из ОС).
В моем случае (да, он старый, это старый проект кордовы ...)
выполнение
java -version
в Windows cmd.exe:но выполняется
java -version
в терминале Webstorms:Исправление появилось с патчем, выпущенным позже (сегодня), версии 2019.2.1. Теперь Webstorm использует переменную os% JAVA_HOME%, как и должно, и
java -version
результат в обоих случаях идентичен.Надеюсь, это кому-то поможет!
источник
Ошибка возникает, когда для пути по умолчанию к java задана версия, отличная от Java 8 или JDK 1.8. *
В моем случае я установил Java 11 после установки Java 8.
Вы можете протестировать, запустив:
В моем случае он вернулся:
Чтобы исправить это, нам нужно убедиться, что путь java указывает на двоичные файлы Java 8 вместо
Предполагая, что у вас уже установлена Java 8 или JDK 1.8. *:
%JAVA_HOME%\bin
илиC:\Program Files\Java\jdk1.8.0_251\bin
добавлено%JAVA_HOME%\bin
PATH, который указывает на JDK 1.8. *Не добавляйте их, если у вас их нет, найдите другие записи PATH, которые могут переопределить
%JAVA_HOME%\bin
%JAVA_HOME%\bin
%JAVA_HOME%\bin
PATH, указывающий на Java 8, теперь будет иметь приоритет над другими записями PATH, указывающими на JDK 11.В моем случае он вернулся:
Исправлена!
источник
источник
Кажется, что Android SDK не поддерживает Java 9. Понизьте версию до 8, если вы не хотите полностью возвращаться к JDK 1.8, что для меня смешно. JDK 8 работает для меня, но обязательно правильно установите переменную среды JAVA_HOME в место установки JDK.
источник
Согласно официальной документации Cordova, он поддерживает только JDK 1.8 не старше даты (апрель 2018 г.) . Или может быть проблема со скриптом определения версии в кордове.
Кордова: установка требований
источник
Я просто переименовал старую папку JDK
_
, на всякий случай, если она мне понадобится, и это сработало.источник
Я использую окна и имею две версии jdk 1.8 и 14 ...
Столкнулся с той же проблемой и после некоторой отладки нашел решение.
И это решило
источник
Ubuntu / Debian Linux версии этого ответа заключается в установке OpenJDK 8 и установить по умолчанию с помощью
update-alternatives
# install (open)jdk 8 sudo apt-get install -y openjdk-8-jdk # update java compiler and set to 1.8 update-alternatives --config javac # update java runtime (optional) update-alternatives --config java # Also set $JAVA_HOME and $PATH to your .bashrc (optional) echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc echo 'export PATH="$PATH:$JAVA_HOME/bin' >> ~/.bashrc # load in current bash session source ~/.bashrc
источник