Corona SDK: Could not find the Java Development Kit (JDK)
При попытке скомпилировать Android проект столкнулся с такой ошибкой в Corona SDK: Could not find the Java Development Kit(JDK) ..
Полный текст ошибки
Corona Simulator
Could not find the Java Development Kit (JDK). This is required in order to build for Android.
Would you like to download it now?
[Да] [Нет]
Выглядит ошибка так:
При попытке нажать [Да], перекидывает на страницу загрузки Java, вот сюда:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Но, погодите-ка, ведь JDK и JRE уже установлены:
Ладно, скачиваю, устанавливаю по новой - опять та же проблема. Полез я изучать форум Corona SDK и практически сразу же наткнулся на несколько похожих тем.. Изучив все детально и попробовав пару советов, я так и не нашел как решить проблему. После этого, я просто начал гуглить похожие проблемы с Java, в других проектах, оказалось все довольно просто.
Если, Вы так же как и я, пока искали решение наустанавлиали разные версии, то в начале избавляемся от них всех.
- Идем, в Пуск/Панель управления/Программы и компоненты и удаляем все версии Java, JDK, JRE.
- Заходим в папку C:\Program Files и папку C:\Program Files (x86) и проверяем чтобы там небыло папки Java
- Заходим в C:\Program Files (x86)\Common Files\Oracle и проверяем чтобы там небыло папки Java
Устанавливаем свежую версию JDK
- Идем на официальный сайт Java и загружаем оттуда JDK, я устанавливал версию 10, файл jdk-10.0.1_windows-x64_bin.exe
- Скачиваем, устанавливаем.
Теперь, все может заработать сразу, без дальнейших манипуляция, поэтому просто перезапустите Corona SDK и попробуйте, снова запустить сборку.
Если по преженему Corona не может найти JDK, продолжаем.
Открываем консоль Пуск/Выполнить/cmd.exe и проверяем, знает ли система где искать Java, в консоли выполняем
1 2 3 |
java -version |
Тут вы либо получите сообщение с установленной версией Java, либо вот такое окошко
Если получили такое окошко, то проверяем существует ли путь:
C:\Program Files (x86)\Common Files\Oracle\Java\javapath
Если существует, то убедитесь, что в нем есть три файла: java.exe, javaw.exe и javaws.exe. Если все так, этот путь необходимо добавить к переменной PATH Windows.
Для этого, переходим в Пуск\Панель управления\Все элементы панели управления\Система, этом окне, выбираем "Дополнительные параметры".
В открывшемся окошке, переходим на вкладку "Дополнительно", и нажимаем кнопку "Переменные среды.."
В открывшемся окне, в нижней панеле "Системные переменные" ищем Переменную "Path", выделяем её, и нажимаем кнопку [Изменить..].
В открывшемся окне, копируем все что там есть в поле "Значение переменной" и вставляем в блокнот. Вы должны получить длинную строку с путями, разделенными точкой запятой, что-то вроде этого:
C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;
Посмотрите внимательно на эти пути и убедитесь, что там нет старых, уже не существующих путей Java.
Теперь, к этому списку добавляем нашу папку, чтобы получилось:
C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;
Копируем это назад, уже с обновленным путем и нажимаем кнопку [OK].
Перезапускаем консоль, и проверяем снова, должны увидеть, что теперь Java нашлась
Теперь, проверяем работу Corona SDK, в моем случае все заработало
Если у Вас по прежнему не работает,пробуем такой вариант, ищем пути JDK и JRE, в моем случае это
- C:\Program Files\Java\jdk-10.0.1\bin
- C:\Program Files\Java\jre-10.0.1\bin
И прописываем их как переменные среды, пути берем без папки bin и последнего слеша:
JAVA_HOME = C:\Program Files\Java\jdk-10.0.1
JRE_HOME = C:\Program Files\Java\jre-10.0.1
В начало PATH, добавляем "%JAVA_HOME%;" т.е.
PATH = %JAVA_HOME%;<..остальные-пути-path..>
Теперь, если открыть консоль и выполнить
1 2 3 4 5 |
echo %JAVA_HOME% echo %JRE_HOME% echo %PATH% |
мы должны увидеть наши пути
Последний способ (с добавлением JAVA_HOME / JRE_HOME) я протестировал с JDK 8, и на нем так же все заработало. Но, лучше сразу ставьте 10-ку.
Надеюсь и у вас теперь все получилось и вы тоже теперь можете нормально компилировать и тестировать apk-шки.
Author: | Tags: /
| Rating:
Leave a Reply