Имя javac не распознано как имя командлета функции файла сценария или исполняемой программы
Обновлено: 23.11.2024
Если вы получаете эту ошибку, Windows не может найти компилятор ( javac ).
Вот один из способов указать Windows, где найти javac . Предположим, вы установили JDK в C:\jdk1.8.0. В командной строке введите следующую команду и нажмите Enter:
Если вы выберете этот вариант, вам придется предварять команды javac и java C:\jdk1.8.0\bin\ каждый раз, когда вы компилируете или запускаете программу. Чтобы избежать этого лишнего ввода, обратитесь к разделу Обновление переменной PATH в инструкциях по установке JDK 8.
Имена классов HelloWorldApp принимаются только в том случае, если обработка аннотаций явно запрошена
Если вы получили эту ошибку, вы забыли включить суффикс .java при компиляции программы. Помните, что это команда javac HelloWorldApp.java, а не javac HelloWorldApp .
Распространенные сообщения об ошибках в системах UNIX
javac: команда не найдена
Если вы получаете эту ошибку, UNIX не может найти компилятор javac .
Вот один из способов указать UNIX, где найти javac . Предположим, вы установили JDK в /usr/local/jdk1.8.0. В командной строке введите следующую команду и нажмите клавишу Return:
Примечание. Если вы выберете этот вариант, каждый раз, когда вы компилируете или запускаете программу, вам нужно будет предварять команды javac и java символом /usr/local/jdk1.8.0/ . Чтобы избежать этого лишнего ввода, вы можете добавить эту информацию в свою переменную PATH. Шаги для этого будут различаться в зависимости от того, какую оболочку вы используете в данный момент.
Имена классов HelloWorldApp принимаются только в том случае, если обработка аннотаций явно запрошена
Если вы получили эту ошибку, вы забыли включить суффикс .java при компиляции программы. Помните, что это команда javac HelloWorldApp.java, а не javac HelloWorldApp .
Синтаксические ошибки (все платформы)
Если вы опечатаетесь в части программы, компилятор может выдать синтаксическую ошибку. В сообщении обычно отображается тип ошибки, номер строки, в которой была обнаружена ошибка, код в этой строке и положение ошибки в коде. Вот ошибка, вызванная отсутствием точки с запятой ( ; ) в конце инструкции:
Если вы видите какие-либо ошибки компилятора, ваша программа не скомпилировалась успешно, и компилятор не создал файл .class. Внимательно проверьте программу, исправьте обнаруженные ошибки и повторите попытку.
Семантические ошибки
Помимо проверки синтаксической правильности вашей программы, компилятор проверяет и другие базовые корректности. Например, компилятор предупреждает вас каждый раз, когда вы используете переменную, которая не была инициализирована:
И снова ваша программа не скомпилировалась, и компилятор не создал файл .class. Исправьте ошибку и повторите попытку.
Проблемы во время выполнения
Сообщения об ошибках в системах Microsoft Windows
Исключение в потоке "main" java.lang.NoClassDefFoundError: HelloWorldApp
Если вы получаете эту ошибку, java не может найти ваш файл байт-кода, HelloWorldApp.class .
Одним из мест, где java пытается найти ваш файл .class, является ваш текущий каталог. Поэтому, если ваш файл .class находится в C:\java , вы должны изменить свой текущий каталог на него. Чтобы изменить каталог, введите в командной строке следующую команду и нажмите Enter:
Подсказка должна измениться на C:\java> . Если вы введете dir в командной строке, вы должны увидеть файлы .java и .class. Теперь снова введите java HelloWorldApp.
Если у вас все еще есть проблемы, возможно, вам придется изменить переменную CLASSPATH. Чтобы убедиться, что это необходимо, попробуйте стереть путь к классам с помощью следующей команды.
Снова введите java HelloWorldApp. Если программа теперь работает, вам придется изменить переменную CLASSPATH. Чтобы установить эту переменную, обратитесь к разделу «Обновление переменной PATH» в инструкциях по установке JDK 8. Переменная CLASSPATH устанавливается таким же образом.
Не удалось найти или загрузить основной класс HelloWorldApp.class
Распространенной ошибкой начинающих программистов является попытка запустить средство запуска Java для файла .class, созданного компилятором. Например, вы получите эту ошибку, если попытаетесь запустить свою программу с java HelloWorldApp.class вместо java HelloWorldApp. Помните, что аргумент — это имя класса, который вы хотите использовать, не имя файла.
Исключение в потоке "main" java.lang.NoSuchMethodError: main
Виртуальная машина Java требует, чтобы класс, который вы выполняете с ней, имел основной метод, с которого начинается выполнение вашего приложения. Пристальный взгляд на "Hello World!" Приложение подробно обсуждает основной метод.
Сообщения об ошибках в системах UNIX
Исключение в потоке "main" java.lang.NoClassDefFoundError: HelloWorldApp
Если вы получаете эту ошибку, java не может найти ваш файл байт-кода, HelloWorldApp.class .
Одним из мест, где java пытается найти ваш файл байт-кода, является ваш текущий каталог.Так, например, если ваш файл байт-кода находится в /home/jdoe/java , вы должны изменить текущий каталог на него. Чтобы изменить каталог, введите в командной строке следующую команду и нажмите клавишу Return:
Если вы введете pwd в командной строке, вы должны увидеть /home/jdoe/java . Если вы введете ls в командной строке, вы должны увидеть файлы .java и .class. Теперь снова введите java HelloWorldApp.
Если у вас все еще есть проблемы, возможно, вам придется изменить переменную среды CLASSPATH. Чтобы убедиться, что это необходимо, попробуйте стереть путь к классам с помощью следующей команды.
Снова введите java HelloWorldApp. Если теперь программа работает, вам придется изменить переменную CLASSPATH таким же образом, как и переменную PATH выше.
Исключение в потоке "main" java.lang.NoClassDefFoundError: HelloWorldApp/class
Распространенной ошибкой начинающих программистов является попытка запустить средство запуска Java для файла .class, созданного компилятором. Например, вы получите эту ошибку, если попытаетесь запустить свою программу с java HelloWorldApp.class вместо java HelloWorldApp. Помните, что аргумент — это имя класса, который вы хотите использовать, не имя файла.
Исключение в потоке "main" java.lang.NoSuchMethodError: main
Виртуальная машина Java требует, чтобы класс, который вы выполняете с ней, имел основной метод, с которого начинается выполнение вашего приложения. Пристальный взгляд на "Hello World!" Приложение подробно обсуждает основной метод.
Приложение Applet или Java Web Start заблокировано
Если вы запускаете приложение через браузер и получаете предупреждения системы безопасности о том, что приложение заблокировано, проверьте следующее:
Убедитесь, что атрибуты в манифесте файла JAR правильно установлены для среды, в которой работает приложение. Атрибут Разрешения является обязательным. В проекте NetBeans вы можете открыть файл манифеста на вкладке "Файлы" среды IDE NetBeans, развернув папку проекта и дважды щелкнув manifest.mf.
Убедитесь, что приложение подписано действительным сертификатом и что сертификат находится в хранилище ключей подписывающей стороны CA.
Если вы используете локальный апплет, настройте веб-сервер для тестирования. Вы также можете добавить свое приложение в список сайтов-исключений, которым можно управлять на вкладке «Безопасность» панели управления Java.
- Открыть командную строку
- Запустите команду «Установить путь». Это напечатает текущее значение переменной среды пути. Вы можете увидеть список всех добавленных каталогов. Проверьте, добавлен ли путь Java SDK или нет. Если он добавлен, вы должны увидеть примерно следующее.
c:\>установить путь
Путь=C:\Program Files (x86)\Windows Resource Kits\Tools\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\ Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Quarantine\;C:\Program Files\Perforce;C:\Program Files\Microsoft Network Monitor 3\;c: \Program Files\Java\jdk1.7.0_17\binКак установить путь к JDK
- Откройте свойства системы (запустите sysdm.cpl)
- Перейти на вкладку "Дополнительно".
- Нажмите "Переменные среды"
Теперь откройте новую командную строку и запустите «установить путь». Вы увидите, что путь к JDK добавлен. Обратите внимание, что если вы запустите команду из окна, которое было открыто до того, как вы изменили переменную PATH, она не напечатает обновленный путь. Даже для компиляции Java-программ вам нужно открыть новое командное окно после установки PATH.
Я получал сообщение об ошибке ""java" не распознается как внутренняя или внешняя команда...". Спасибо за подробную информацию о том, как это исправить.
Это действительно полезно для запуска Java на моем компьютере. Большое спасибо за то, что поделились этой информацией..
Спасибо. Пошаговое обучение очень полезно. Я потратил более 2 часов, чтобы решить эту проблему, и, наконец, этот форум мне помог. Еще раз спасибо.
у меня все еще появляется это сообщение об ошибке? есть идеи, что не так?
После установки пути необходимо открыть новое окно cmd.
нужно добавить точку с запятой в конце пути и попробовать
c:\Program Files\Java\jdk1.7.0_17\bin;у меня сработало. СПАСИБО! загляните в уже существующую переменную Path и просто добавьте расширение Java bin после точки с запятой…
Спасибо! Сделано отлично. Я просто не понял процедуру в книге, но после прочтения ваших шагов «хлоп, хлоп. хлопать" Боже благослови! ^_^
Большое спасибо, сэр :))
на моем компьютере установлена java, я проверил это. но когда я набираю javac, появляется сообщение об ошибке выше, даже после установки пути… что мне делать? помогите, пожалуйста
Я не уверен, что вы также проверили, был ли установлен JDK, а не только JRE. Вы можете подтвердить это?
Кроме того, вы открыли новую команду после установки пути?Убедитесь, что вы устанавливаете системный PATH, а не пользовательский PATH. По какой-то причине я считаю, что пользовательский PATH не работает.
Я установил jdk 8 с обновлением 25, а также установил путь и перезагрузил систему. Но все равно отображается сообщение о том, что java не распознается как внутренняя/внешняя команда
Запросить помощь
Заранее спасибо
Можете ли вы сообщить нам следующее, чтобы помочь вам.
1) Путь к папке, в которой находится папка java bin.
2) Значение переменной среды PATH (вы можете получить с помощью команды «установить путь»)Перезагрузка не требуется, чтобы изменения PATH вступили в силу. Просто новое окно cmd должно получить новые значения.
Hı, после этих шагов он скомпилировал файлы Java, но я получаю сообщение «Не удалось найти или загрузить основной класс».
Большое спасибо, чувак..Теперь я могу скомпилировать исходный файл Java…ты мужик…шахматы
Странная ситуация: мой javac работает нормально, но -jar не распознается. Переменная пути определенно содержит мой путь JDK. Что я могу сделать?
Убедитесь, что исполняемый файл jar.exe указан в пути к JDK. Это должно было быть установлено по умолчанию в той же папке, где присутствует javac.exe.
Пожалуйста, мне нужна ваша помощь, как получить информацию после нажатия кнопки удаления? Я удалил «Путь» и его значение из среды. Собственно, я хотел прописать путь для javac, не знаю, какую информацию мне сейчас вводить в путь, но я добавил в него имя jdk и его версию, так что теперь путь теряется вместе с значения или что-то еще, что было написано там до того, как я его отредактировал.
Пожалуйста, кто-нибудь может мне помочь? пожалуйста, мне нужна ваша помощь в решении такой проблемы, как «javac не распознается как внутренняя или внешняя команда»
ваша помощь очень ценится!
Вы можете установить его снова, это не должно быть проблемой. Ценность моей системы заключается в следующем.
Исходя из вышеизложенного, вы можете удалить папки, не существующие в вашей системе, и соответствующим образом установить PATH.
Я установил jdk 8 с обновлением 45 и указал путь к системной среде. Я убедился, что мое окно командной строки было закрыто, а затем открыл окно командной строки, и я все еще получаю сообщение «javac» не распознается как внутренняя/внешняя команда.
1) Путь к папке, в которой находится папка java bin.
C:\Program Files\Java\jdk1.8.0_45
Патч C:\Program Files\Java имеет следующие папки:
jkd1.8.0_45
jre1.8.0_31 < бр />jre1.8.0_452) Значение переменной среды PATH (вы можете получить с помощью команды «установить путь»)
C:\ProgramData\Oracle\Java\javapath;c:\Program Files (x86)\AMD APP\bin \x86_64;c:\Program Files (x86)\AMD APP\bin\x86;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\; c:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\Java\jdk1.8.0_45Заранее спасибо
В используемом вами пути Java обнаружена незначительная ошибка. Вам нужно добавить C:\Program Files\Java\jdk1.8.0_45\bin . bin отсутствует в указанном вами пути.
Большое спасибо. это сработало
Я прочитал ваше руководство и комментарии, но у меня все еще есть проблема. Любая помощь будет принята с благодарностью; Я уже потратил на это несколько часов.
2) Я закрыл и снова открыл cmd.
Сообщите нам вывод этого каталога "C:\Program Files\Java\jdk1.8.0_45\bin"
PATH, кажется, был установлен правильно. Но я сомневаюсь, есть ли у вас файлы java*.exe в папке или нет.Кроме того, убедитесь, что вы устанавливаете системный PATH, а не пользовательский PATH. По какой-то причине я считаю, что пользовательский PATH не работает.
Привет, у меня сейчас эта проблема, но когда я набираю команду dir для созданного пути, я получаю все правильные файлы.
Я не знаю, в чем проблема и как ее исправить?Спасибо, я получал эту ошибку последние 2 месяца, и теперь, наконец, я решил ее……:-)
после выполнения всех вышеперечисленных шагов я могу скомпилировать и успешно запустить все коды, сохраненные в моей папке bin.
но если я сохраню свои файлы .java в какой-либо другой папке и попытаюсь их скомпилировать, я получу ошибку «javac не распознан как intrnl или extrnl comnd..».
что мне сделать, чтобы мои коды запускались из любой папки?
Похоже, вы не установили значение в PATH/не правильное значение. Пожалуйста, ознакомьтесь с приведенными выше инструкциями по правильной настройке PATH.
Привет. У меня это все еще не работает, говорит, что Javac все еще не распознается как внутренняя или внешняя команда. Я снова открыл окно cmd и не знаю, что не так. Я думал, что смогу ответить на те же вопросы, что и кто-то другой, может быть, вы могли бы увидеть, что не так, или иметь другое представление о том, что я могу сделать.
1) Путь к папке, в которой находится папка java bin.
C:\Program Files (x86)\Java\jdk1.8.0_40\bin
Патч C:\Program Files (x86)\Java имеет следующие папки
jdk1.8.0_40
jre1.8.0_40
jre1.8.0_45Можете ли вы проверить, есть ли у вас файл javac в папке bin. Хотя маловероятно, что файл не будет присутствовать, но я не вижу другой причины, по которой вы все равно получаете ошибку.
Привет, админ,
У меня тоже такая проблема. У меня нет файла javac в папке bin.
Можете ли вы помочь.
СпасибоПроверьте, установлена ли у вас JDK или JRE? JDK должен иметь исполняемый файл javac.exe вместе с другими материалами JRE. JRE будет иметь только файлы (java.exe и еще несколько) для запуска уже скомпилированных программ Java.
При установке пути я стер уже существующий предыдущий путь и ввел «c:\programfiles(x86)\java\jdk\1.8.0_65\bin;» в командной строке cmd команда set path показывает значение пути, такое же, как указано выше, но я получаю сообщение об ошибке javac не распознан……пожалуйста, помогите.
У меня такая же проблема. Я проверил javac в папке bin, и он был там. Но я поймал другую проблему. Я установил путь в cmd, и когда я проверил, он был установлен. Затем я закрываю окно, и когда я снова открываю другое окно cmd, там не было пути, который я установил в предыдущем окне cmd. Не могли бы вы помочь?
Большое спасибо за инструкции. Я исправил эту ошибку распознавания.
все еще не работает, приятель! пожалуйста, помогите
я столкнулся с той же проблемой, что и Шивани и Анна… но у меня есть javac.exe в папке bin, но ошибка все еще возникает
Javac не распознается как внутренняя или внешняя команда!! пожалуйста, помогите
Уже задан путь. В папке есть java.exe, все равно выдает ошибку. ПОЖАЛУЙСТА ПОМОГИ! :3
Даже после установки пути я получаю сообщение об ошибке javac не распознается как внутренняя или внешняя команда. Пожалуйста, помогите мне с этим. Недавно я сменил ОС на Windows10.
У меня установлено обновление 6 для Java SE 8 .
Путь, который я установил: C:\Program Files (x86)\Java\jdk1.8.0_60\bin
расположение java: C:\Program Files (x86)\Java\jdk1 .8.0_60 (для jdk он также содержит файл javac в папке bin) и
C:\Program Files (x86)\Java\jre1.8.0_60 (для jre)
Я пытаюсь запустить программу, которая находится в какой-то папке на диске D. Когда я пытаюсь запустить, я получаю сообщение об ошибке, что «javac не распознается как внутренняя или внешняя команда. То же самое отлично работало с java 7…Большое спасибо, это работает для меня.
Я обнаружил проблему в том, что не помещал пробел между файлами программы,
Это заняло три дня,
Еще раз спасибо за вашу помощьБольшое спасибо, мне помогло!
Привет,
Большое спасибо. Я все делал правильно, но все еще не мог увидеть путь jdk в командной строке. Ваша последняя записка сделала мой день. Повторное открытие нового командного окна решило мою проблему.Большое спасибо за эту полезную информацию. Будьте благословенны :)
благодаря этой статье, она мне очень помогла
большое спасибо, это действительно помогло…
После того, как путь правильный..все равно программа не компилируется..помогите мне..
несмотря на установку пути, я могу запустить java, но не могу запустить javac
я выполнил всю процедурупо-прежнему возникает та же ошибка при компиляции, что «javac не распознается как внутренняя или внешняя команда»
Спасибо! Это сработало! Я добавил путь через графический интерфейс, но я проверял снова и снова в одной и той же командной строке. Как только я открыл новый, я обнаружил, что новый путь добавлен, выполнив «установить путь», и javac заработал! (Д)
Чтобы запустить javac в cmd, вы используете ‘set PATH’, что правильно, но на этом пути есть проблема.
"Вы должны устанавливать путь каждый раз, когда запускаете cmd."
Я нашел новый и очень простой способ, который нужно сделать только один раз.
Пожалуйста, внимательно прочитайте инструкции –
. Во-первых, откройте диск «C:» > откройте Windows > откройте Java.
.Теперь вы столкнетесь с двумя папками jdk.
.Вы должны сначала открыть папку, а затем открыть корзину.
. Нажмите ctrl + A, а затем ctrl + C.
. Вернитесь к C: Диск, а затем к Windows.
. Затем нажмите ctrl + V.
. Теперь вернитесь к C: > Program Files > Java > JDK [First Folder].
. Нажмите ctrl + A, после чего будут выбраны все файлы и папки.
.Отмените выбор файла – bin.
.Нажмите ctrl + c и вставьте все файлы на диск C:. (Имейте в виду, что файлы .paste не должны находиться ни в одной из папок, они будут вне всех папок и должны находиться только на диске C:.Нет, вам НЕ нужно устанавливать путь каждый раз. Следуйте инструкциям в посте, чтобы сделать это из окна свойств системы. Вам нужно установить путь только один раз, и после этого он будет работать нормально. Убедитесь, что вы открыли новую командную строку после обновления пути.
Не могли бы вы найти ошибку. Я знаю, что в моем пути есть куча дерьма, но я пытаюсь разместить версию jdk в правильном месте. Вот мой путь без версии (и да, я проверил, и у меня версия 8.1.0_91)
Что я пытался поставить и все еще не работает:
Вы можете помочь, пожалуйста?
Думаю, это сработает. Это может быть немного завышено, но, к счастью, я могу запустить java -version и javac без ошибок. Спасибо за полезную страницу! :)
все еще получаю, javac не распознается как внутренняя или внешняя команда!!
Убедитесь, что вы запускаете командную строку от имени администратора в Windows 7 и более поздних версиях
Здравствуйте, у меня есть Hello.java и в c:\MyProject.
Но команда
c:\myProject>javac Hello.java
javac: файл не найден: Hello.java
Использование: javac
use -help для списка возможные вариантыНе могли бы вы посоветовать мне, что не так
Путь Javac указан правильно, он жалуется, что Hello.java не найден. Проверьте, есть ли этот файл в папке C:\myProject
Я сделал это, но когда я открыл cmd после закрытия всех вкладок, он снова показал то же самое, кроме jdk, и когда я снова открыл переменные среды, я обнаружил, что пути, который я написал, не было, пожалуйста, помогите
У меня уже правильно указан каталог, но в некоторых папках Java не распознается как команда. У меня есть 4 сервера minecraft для разных модпаков/версий, но работает только один. Копирование .bat не работает, но запуск .jar по-прежнему работает, и ввод команды в командной строке в этом каталоге дает другую ошибку
спасибо за предложение… это сработало, изменив путь.. на большинстве ПК/ноутбуков возникает ошибка из-за изменения PATH..лучше каждый сначала проверить свой путь, установленный в соответствующей системе
привет, админ,
я установил последнюю версию jdk, если я даю java-версию в cmd, она распознается, но javac не распознается, в чем может быть причина??Я установил переменные среды, и когда я набираю java в командной строке, все работает. Но когда я пытаюсь скомпилировать файл .java с помощью команды javac, он не работает и выдает ошибку: javac не распознается как внутренняя или внешняя команда
Привет, ребята,
Даже у меня была такая же проблема, и я сделал следующие 2 вещи, которые наконец сработали для меня:
1. В системных переменных (на вкладке «Дополнительно») создана новая переменная «CLASSPATH» со значением «C:\Program Files\Java\jre-10\lib»
2. Закрыто текущее окно командной строки (поскольку оно по-прежнему выдавало ту же ошибку), открылось новое окно командной строки, где я получил правильный ответ для javac :)
Надеюсь, это поможет.Только одна программа компилируется правильно. Остальные выдают ошибки. Помогите пожалуйста
сработало, красавчик
Я уже настроил все эти мысли, прежде чем увидеть эти заметки, но все же я сталкиваюсь с тем, что java не распознается как внутренняя или внешняя камера, и что мне делать дальше, я установил последнюю версию java jdk 14
"javac" не распознается как внутренняя или внешняя команда, работающая программа или ошибка пакетного файла, когда вы пытаетесь скомпилировать исходный файл Java с помощью команды javac, такой как javac Helloworld.java, но ваш PATH задан неправильно. Это означает, что исполняемый файл javac.exe, находящийся в каталоге bin папки установки JDK, не добавляется в переменную среды PATH. Вам нужно добавить папку JAVA_HOME/bin в PATH вашего компьютера, чтобы решить эту ошибку. Вы не можете скомпилировать и запустить программу Java, пока не добавите Java в системную переменную PATH. Вот как эта ошибка выглядит в командной строке Windows-машины:
Шаги по устранению того, что «javac» не распознается как внутренняя или внешняя команда:
Давайте посмотрим, как решить эту проблему, чтобы скомпилировать и запустить программу Java из командной строки:
1) Откройте командную строку в Windows, нажав кнопку «Пуск», а затем введя cmd в окне запуска, как показано на следующем снимке экрана:
2) Введите echo %PATH% , теперь он покажет вам все каталоги, доступные в переменной окружения PATH. Теперь скопируйте этот вывод PATH в свой текстовый редактор, такой как Блокнот или Word-pad, и найдите, содержит ли он каталог установки JDK или JAVA_HOME.
Например, если ваш JDK установлен в "c:\program files\java\jdk1.8.0" , PATH должен включать "c:\program files\java\jdk1.8.0\bin" . Важно включить каталог bin, поскольку все исполняемые файлы, необходимые для компиляции, запуска и отладки программ Java, хранятся в каталоге bin.
Иногда вы также увидите %JAVA_HOME%\bin, где JAVA_HOME — это еще одна определяемая пользователем среда, указывающая на каталог установки Java.
3) Если в PATH нет каталога bin JDK, вы можете добавить их в PATH, выполнив команду
установите PATH = %PATH%;"c:\program files\java\jdk1.8.0\bin
Это также известно как установка PATH в Java. После установки PATH вы можете компилировать, запускать и контролировать Java-программы с помощью различных инструментов, которые поставляются с установкой JDK. Если вы не очень хорошо знакомы с настройкой переменных среды из командной строки, вы также можете использовать окно настроек, как показано в этой статье.
4) Не забудьте закрыть текущую командную строку и открыть новую перед повторным запуском команды javac. Любое изменение переменной среды доступно только для новых окон cmd.
Это все о том, как исправить «javac» не распознается как внутренняя или внешняя ошибка команды, исполняемой программы или пакетного файла в Windows. Вы можете получить аналогичную ошибку, например, «java» не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл, если вы попытаетесь запустить уже скомпилированную программу Java, а PATH не установлен на вашем компьютере.Итак, вы пытаетесь скомпилировать исходный файл Java и получаете сообщение "'javac' не распознается как внутренняя или внешняя команда". Если это ваша первая Java-программа или HelloWorld, я предлагаю пройтись по разделу Как скомпилировать и запустить HelloWorld на Java, потому что это объясняет, что вам нужно, прежде чем скомпилировать и запустить любую Java-программу. Если вы пересекли этот уровень и знаете, как установить PATH в Java, значит, что-то не так при установке PATH в Java. В любом случае, давайте посмотрим, когда вы получаете эту ошибку и откуда берется 'javac' не распознается как внутренняя или внешняя команда.
Это стандартная ошибка в командной строке Windows, когда вы вводите команду, которая недоступна в системном пути, здесь команда javac, которая используется для компиляции исходного файла Java и создания файлов классов. не находятся в PATH. Лучший способ убедиться в этом — выполнить следующую команду:Если вы видите папку установки JDK или JAVA_HOME в PATH и включенный каталог bin, который содержит все двоичные файлы Java, включая команды javac и java, которые используются для компиляции и запуска программы Java.
Скорее всего, ваш PATH может не иметь JDK/bin в PATH, если это так, просто включите папку bin JDK в свой PATH. Узнайте, как установить PATH для Java в Windows, чтобы получить пошаговое руководство.
Причина «javac» не распознается как внутренняя или внешняя команда
Другая причина "javac не распознается как внутренняя или внешняя команда" может заключаться в том, что в вашей Системе установлена только JRE, а не JDK, что означает, что вы можете запускать только уже скомпилированные Java-программы и не можете компилировать Java-программы, потому что JRE не содержит javac в своей папке bin. Чтобы узнать больше о JRE и JDK, см. разницу между JRE и JDK. В этом случае вам необходимо загрузить и установить Java в вашей системе. Текущую версию Java можно загрузить с сайта Oracle.
Другой возможной причиной того, что " javac не распознается как внутренняя или внешняя команда", является установка PATH с неверным каталогом, например путь не может содержать косую черту или что-то пропущено.
Лучший способ проверить это — просто скопировать путь JDK из переменной PATH и выполнить в командной строке, если вы не можете попасть в этот каталог, что означает, что путь к папке установки JDK неправильно. В этом случае перейдите в каталог bin каталога установки JDK, скопируйте его адрес из адресной строки и добавьте его в PATH, чтобы все заработало.Таким образом, основная причина "javac не распознается как внутренняя или внешняя команда" заключается в том, что система не может найти команду javac по своему PATH. просто дважды проверьте PATH и добавьте папку bin каталога установки JDK в путь, если он еще не включен. Не забудьте закрыть и снова открыть командную строку после внесения этого изменения, это устранит ошибку «javac не распознан как внутренняя или внешняя команда».
Читайте также: