Я видел так много вопросов по этому поводу. Но ни один из них не может решить мою проблему. Я пытаюсь создать приложение Cordova для Android. Но требования Cordova всегда не выполняются, поскольку он не может найти JAVA_HOME. Ошибка, которую я получаю, находится ниже
C:\Android-Dev\WorkSpace\myTFS>cordova requirements
Android Studio project detected
Requirements check results for android:
**Java JDK: not installed
Failed to run "javac -version", make sure that you have a JDK installed.
You can get it from: http://www.oracle.com/technetwork/java/javase/downloads.
Your JAVA_HOME is invalid: C:\Program Files\Java\jdk1.8.0_171**
Android SDK: installed true
Android target: not installed
cmd: Command failed with exit code ENOENT
Gradle: not installed
Cannot read property 'toString' of null
(node:4220) UnhandledPromiseRejectionWarning: CordovaError: Some of requirements check failed
at C:\Users\SAHAA2\AppData\Roaming\npm\node_modules\cordova\src\cli.js:414:27
at _fulfilled (C:\Users\SAHAA2\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:787:54)
at C:\Users\SAHAA2\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:816:30
at Promise.promise.promiseDispatch (C:\Users\SAHAA2\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:749:13)
at C:\Users\SAHAA2\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:557:44
at flush (C:\Users\SAHAA2\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\q\q.js:108:17)
at process._tickCallback (internal/process/next_tick.js:61:11)
at Function.Module.runMain (internal/modules/cjs/loader.js:746:11)
at startup (internal/bootstrap/node.js:240:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:564:3)
(node:4220) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise
which was not handled with .catch(). (rejection id: 1)
(node:4220) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero
exit code.
Ниже приведены настройки моей домашней страницы JAVA и переменных пути. Я знаю, что многие люди просили указать путь к папке bin в переменной PATH. Но это все еще не работает. Ниже представлена моя система
C:\Android-Dev\WorkSpace\myTFS>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.8.0_171
C:\Android-Dev\WorkSpace\myTFS>echo %path%
C:\Program Files\Java\jdk1.8.0_171\bin;C:\Program Files\nodejs\;C:\Android-Dev\SDK\platform-tools;C:\Android-Dev\SDK\tools;C:\Program Files\Android\Android Studio\gradle\gradle-4.4\bin;C:\User
s\SAHAA2\AppData\Roaming\npm
Связано ли это с проблемой доступа, как говорится Не удалось запустить "javac -version", убедитесь, что у вас установлен JDK.
Любая помощь будет очень признательна. Я бы воздержался от повторения этого вопроса, как многие задавали раньше, но, похоже, у меня ничего не работает. Следовательно, снова задаем тот же вопрос. Если вам нужна дополнительная информация, пожалуйста, дайте мне знать




Это может быть из-за пробела в пути JAVA_HOME. Заменить C:\Program Files\Java\jdk1. 8.0_171 на C:\Progra~1\Java\jdk1. 8.0_171
И ваш
PATH, иJAVA_HOMEвыглядят нормально. Убедитесь, что вы можете найтиjavac.exeв папкеC:\Program Files\Java\jdk1.8.0_171\bin.