Gulp не является внутренней или внешней командой исполняемой программой или пакетным файлом

Обновлено: 04.07.2024

Я пытаюсь использовать Gulp и Node. Js, чтобы передать мой процесс для минимизации и конкатенации файлов CSS/JS для производства.

Вот что я сделал.

    Я установил Node.Js на свою машину под Windows 7.
    Установленный Gulp глобально с использованием этой команды npm install -g gulp
    Затем я добавил новую переменную пользователя с именем NODE_PATH , установив ее в %AppData%\npm\node_modules

После закрытия и повторного открытия моей командной строки я попытался запустить задачу Gulp из командной строки (т.е. gulp css ). Но это дает мне следующую ошибку:

Как я могу заставить это работать?

Когда я открыл следующий путь, используя панель поиска в окнах,
%AppData%\npm\node_modules Я вижу следующие две папки

введите описание изображения здесь

Я попытался добавить %AppData%\npm\node_modules в переменную Path в свою системную переменную, но она не приняла ее, потому что эта переменная достигла максимума допустимых фрахтователей.

Я удалил пару путей из моей переменной Path и добавил ;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules

но все еще работает.

Я даже пытался установить путь во время выполнения с помощью этой команды

PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
затем запустите gulp и все те же проблемы.

Что мне здесь не хватает? Что еще мне нужно, чтобы заставить это работать?

спросил(а) 2021-01-06T17:34:06+03:00 10 месяцев, 2 недели назад

У меня была аналогичная проблема, когда я установил локально сначала (w/o -g). Я переустановил с -g (глобальным), а затем он работал.

вы должны запустить gulp из папки, где gulpfile.js доступен.

ответил(а) 2021-01-06T17:34:06+03:00 10 месяцев, 2 недели назад

Я решил проблему, удалив NodeJs и gulp и установив их снова.

ответил(а) 2021-01-06T17:34:06+03:00 10 месяцев, 2 недели назад

Перейдите к My Computer>Properties>Advance System Settings>Environment Variables>

Под переменными Администратора отредактируйте переменную PATH и измените ее значение на "C:\Users\Username\AppData\Roaming\npm" . Примечание. Имя пользователя в пути будет текущим именем пользователя Admin, с которым вы вошли в систему.

ответил(а) 2021-01-06T17:34:06+03:00 10 месяцев, 2 недели назад

В моем случае эта проблема возникла из-за того, что я сделал npm install с другим системным пользователем в моей папке проекта раньше. Gulp уже установлен глобально. После удаления папки/node_modules/в моем проекте и запуске npm install с текущим пользователем она работала.

ответил(а) 2021-01-06T17:34:06+03:00 10 месяцев, 2 недели назад

Жаль, что это была опечатка. Вы можете добавить node_modules в конец вашей глобальной переменной пути пользователя или, возможно, проверить разрешения, связанные с этой папкой (node _modules). Ошибка не похожа на последний случай, но я столкнулся с проблемами, сходными с вашими. В большинстве случаев я считаю первое решение достаточным. Просто перейдите к переменным окружения и добавьте путь к node_modules в последнюю часть переменной пользовательского пути. Примечание. Я говорю пользователь, а не систему.

Просто добавьте точку с запятой в конец объявления переменной и добавьте статический путь к папке node_module. (Ex c:\path\to\node_module)

В качестве альтернативы вы можете:

ИЗМЕНИТЬ

Последнее решение будет работать до тех пор, пока вы не закрываете CMD. Итак, используйте первое решение для постоянного изменения.

es6 'gulp' не является внутренней или внешней командой, а также не является исполняемой программой или командным файлом.

После установки gulp с помощью следующей команды в Windows

Затем используйте команду:

Подсказка «gulp» не является ни внутренней, ни внешней командой, ни исполняемой программой

Причина:
Переменная среды настроена неправильно.
Переменная среды здесь не только должна устанавливать конфигурацию пути установки узла, но также должна добавлять переменную среды node_global под узлом;

C:\Program Files\nodejs\node_global
Примечание.

es6 указанная версия установки

Будет установлена ​​непосредственно установленная версия 3.9.1

Не удалось загрузить внешний модуль @ babel / register

После настройки переменных среды обязательно перезапустите окно DOS (как знает программист).

Путь к запросу конфигурации переменной среды



Проверьте путь, где хранятся файлы командных сценариев, связанных с npm
C:\Users\Administrator>npm config get prefix
C:\Users\Administrator\AppData\Roaming\npm
Убедитесь, что путь к C: \ Users \ Administrator \ AppData \ Roaming \ npm находится в переменной Path системы Windows.
Если нет, добавьте его для выполнения команды gulp.

Интеллектуальная рекомендация

Поверните строку в целые числа

Тема Описание Преобразуйте строку в целое число (реализация функции integer.valueof (строка), но строка не совпадает 0), требуя функции библиотеки, которая нельзя использовать для преобразования целых.

Docker создает репликацию Redis Master-Slave

Centos установить докер быстрый старт докера Создать Dockerfile Поместите файл на сервер Linux, создайте папку / usr / docker / redis и поместите его в этот каталог Выполните следующий код в каталоге .


Установка GateOne на новом CentOS7

Установка GateOne на новом CentOS7 В последнее время исследуются такие инструменты, как WebSSH2, в настоящее время требуется встроить терминал ssh в веб-приложение и найти GateOne. GateOne - это веб-в.


Примечания к исследованию Qt4 (5), QWaitCondition of QThread Learning


Практические занятия: решения проблем системы управления обучением

Сразу после получения задания будет много трудностей и много проблем. Хорошо иметь проблему, а это значит, что вы можете получить новые знания. Неважно, есть ли проблемы, ключ в том, как их решить. пр.

Вам также может понравиться


искробезопасная практика (5) обратный индекс

задний план Поисковые системы обычно создают инвертированный индекс ключевых слов. Ключевое слово - индекс, за которым следуют веб-страницы, содержащие ключевое слово. На этот раз, используя данные мо.


Решение центра тяжести неправильного многоугольника

Справочник статей Во-первых, решение центра тяжести неправильных многоугольников 1.1 Метод расчета треугольника центра тяжести 1.2 Метод расчета площади треугольника 1.3 Метод расчета площади полигона.

Причины ошибки «Не является внутренней или внешней командой» при выполнении команд в командной строке Windows 10 и Windows 11

Для того, чтобы понять суть ошибки, давайте рассмотрим, что происходит при выполнении команды в командной строке, в качестве примера будем использовать такой код:

Не является внутренней или внешней командой, исполняемой программой или пакетным файлом в командной строке

  1. В случае, если «команда» является собственной встроенной командой консоли (в качестве примера — cls), она выполняется с заданными параметрами.
  2. Если «команда» — это какой-то файл .exe, .cmd, .bat или иной, например, pip, python или adb, выполняется попытка его запуска из расположения, где запущена командная строка (выделено на изображении ниже) или из расположений, добавленных в системную переменную PATH (о которой поговорим подробнее далее). При удачном запуске и правильно переданных параметрах команда выполняется.

Отсюда следуют наиболее распространённые причины появления ошибки при выполнении команды:

  • Самая распространённая причина — отсутствие исполняемого файла в папке, где запущена командная строка и в папках, содержащихся в PATH.
  • Ошибки при написании команды: при ошибке в имени файла, он не будет найден, что и приведёт к указанной ошибке.
  • Файл отсутствует где-либо, например, вы пробуете использовать telnet, в то время, когда соответствующий компонент Windows не установлен.
  • Редко — запускаемый через командную строку файл действительно не является исполняемой программой: изначально сам по себе или из-за повреждений.

Теперь о том, что делать в рассматриваемой ситуации.

Для исправления ошибки «Не является внутренней или внешней командой, исполняемой программой или пакетным файлом» в зависимости от ситуации можно использовать следующие подходы.

Переход к папке с исполняемым файлом в командной строке

Если выполнение команды требуется не на регулярной основе, достаточно перейти в командной строке в папку, содержащую нужный файл, делается это следующим образом:

  1. Например, мы знаем, что python.exe для последней версии Python на момент написания этой статьи располагается в папкеpip.exe — там же во вложенной папке Scripts (если окажется не ясным, как попасть в эту папку, процесс показан в видео ниже), adb.exe — где-то в папке с platform-tools и так далее. Скопируйте этот путь, сделать это можно из адресной строки проводника.
  2. Если командная строка запущена на том же диске, где находится нужный исполняемый файл, введите команду вида:
  3. Если командная строка запущена на диске C:, а исполняемый файл находится на другом диске, то перед 2-м шагом используйте команду вида (здесь D меняем на нужную букву диска) D: с последующим нажатием Enter.
  4. Введите нужную команду, которая ранее сообщала об ошибке — теперь она должна выполниться успешно.

Добавление папки с программой в системную переменную среды PATH

В случае, когда использование команд требуется регулярно, например, для git, разумным будет добавить папку с этим исполняемым файлом в PATH, чтобы затем в любой момент времени выполнять команды, независимо от того, в какой папке открыта командная строка:

Примечание: если ошибка возникает при использовании команд python, обратите внимание, что при первоначальной установке вам предложат добавить необходимые пути в PATH (отметка Add Python to PATH), то же самое часто бывает и при установке других программ:

Добавление Python в PATH при установке

Установка недостающих компонентов

Иногда проблема возникает из-за того, что нужный файл попросту отсутствует на компьютере:

Включение клиента Telnet

  • Вы пробуете использовать команды telnet, но не зашли в Панель управления —Программы и компоненты — Включение или отключение компонентов Windows и не включили «Клиент Telnet».
  • Запускаете команды pyinstaller, но предварительно не установили его командой pip install pyinstaller
  • Пробуете использовать команды adb.exe, но не установили необходимые компоненты Android SDK Platform Tools.

Аналогичная ситуация может быть и для многих других, не входящих в стандартную поставку Windows 10 и Windows 11 компонентов, например, java.

Если ошибка возникает при запуске системных инструментов Windows

Видео инструкция

Надеюсь, статья и видео помогли разобраться с проблемой и помогли в её решении. Остаются вопросы? — задавайте их в комментариях, я постараюсь ответить.

'gulp' is not recognized as an internal or external command, operable program or batch file.

Я попытался запустить node gulpfile.js , указав на мой gulpfile, и он работает без ошибок, и, конечно же, он начинается с require('gulp') .

Любые предложения по работе с gulp в Windows (8.1)?

ОТВЕТЫ

Ответ 1

Модули npm, такие как gulp, не установлены на пути. Таким образом, они не обнаруживаются при запуске их в CMD.

Если gulp установлен глобально, вы можете использовать следующий процесс:

Add Node path to environmental variables

Запуск npm ls и npm ls -g показывает, что они установлены, но CMD не может их найти из-за the missing link .

Ответ 2

Вы забыли установить пакет gulp -cli:

Затем вы можете запустить команду "gulp" из командной строки.

Ответ 3

  • Убедитесь, что у вас есть gulp и gulp.cmd (используйте поиск в Windows)
  • Скопируйте путь gulp.cmd ( C:\Users\XXXX\AppData\Roaming\npm )
  • Добавьте этот путь к переменной окружения Path envirement или edit PATH и добавьте %APPDATA%\npm
  • Повторно открыть cmd.

Добавьте %APPDATA%\npm в начало пути, а не в конец пути.

Ответ 4

Я использую Windows 8.1. У меня была та же проблема.

Я установил gulp с помощью командной строки Node.js

Затем перейдите в нужный каталог в командной строке Node.js и попробуйте

Если вы получите gulp локальную версию, не найденную, выйдите из текущей командной строки Node.js и попробуйте приведенную выше команду в новой командной строке Node.js

Я попробовал NODE_PATH, упомянутый @SteveLacy, но в командной строке все еще не удалось обнаружить команду gulp

Ответ 5

Установите gulp глобально.

npm install -g gulp

Установите gulp локально в проекте.

npm install gulp

Добавьте строку ниже в свой пакет package.json

Это сработало для меня.

Ответ 6

Имел ту же проблему, не очень лучшее решение, но установил ее глобально:

Конечно, лучше все еще иметь его в package.json , поэтому вы можете сделать следующее, чтобы установить его локально и добавить запись в package.json :

Все остальное (плагины gulp) также устанавливаются локально.

Ответ 7

У меня была такая же проблема, когда я пытался работать gulp на виртуальной машине сотрудника. Кажется, проблема связана с папкой пользователей.

Добавление NODE_PATH в переменные среды не устранило проблему.

Если вы измените переменную "Path" в системных переменных и добавите "% APPDATA%\npm" в конце этого, она должна устранить проблему. Если вы или кто-то еще npm не установили gulp в качестве другого чем тот, который вы в настоящее время вошли в систему как.

Если вы хотите, чтобы он был доступен для всех пользователей, поставьте 'C:\Users\yourUser\AppData\Roaming\npm' (или где бы вы не были gulp) явно, вместо использования '% APPDATA%\npm', Вы также можете переместить файлы на более удобный для пользователя путь.

Не забудьте запустить новое приглашение cmd, потому что тот, который вы открыли, не получит новую переменную Path.

Ответ 8

Один правильный путь:

  • Cmd + R: введите "% appdata%"
  • Перейти в папку npm
  • Скопируйте весь путь как "C:\Users\Blah. \npm \"
  • Перейдите к "Мой компьютер" + "Щелкните правой кнопкой мыши" "Свойства"
  • Расширенные настройки системы (слева)
  • Нажмите "Переменные среды"
  • Нажмите "Изменить путь"
  • Добавьте, что "C:\Users\Blah. \npm \" до конца и введите ";" после этого
  • Нажмите ok и повторно откройте cmd

Ответ 9

Простое решение просто npm link gulp

Ответ 10

У меня была аналогичная проблема с настройкой его в Windows 10. Мой ответ специфичен для Windows (посмотрите ответы на изменение пути в bash для решения Linux или OSX)

Обратите внимание, что я использовал setx вместо set, чтобы убедиться, что обновление переменной окружения остается. Также обратите внимание, что это обратная косая черта.

Это должно работать, но для меня это не так, потому что setx имеет ограничение только принимать 1024 символа. (да, это также бессмысленно для меня).

Итак, попробуйте приведенное выше, и если вы получите предупреждение, подобное достижению предела 1024, тогда вы можете сделать другой способ, которым я закончил.

Сначала, пока вы все еще находитесь в консоли, введите: echo %appdata%\npm . это ваша папка npm, которую вы хотите добавить в путь, поэтому добавьте ее в свой буфер обмена.

Вам нужно войти в реестр и перейти в следующую папку:

Затем добавьте значение "Путь" в путь к папке npm в вашем буфере обмена. Перезагрузите, чтобы активировать новое значение, и теперь вам будет хорошо идти.

using regedit

Наконец, просто проверьте все это

Ответ 11

Сначала вы должны установить gulp как глобальное, используя:

В противном случае решение пути не решит проблему.

Затем добавьте путь модулей npm к PATH, используя:

Ответ 12

Главный ответ не помог мне.

Я использую виртуальную машину с предыдущим владельцем. У предыдущего владельца была установлена ​​старая версия npm. Используя это, я был установлен gulp глобально с npm install -g gulp . Выполнение команды gulp вернет 'gulp' is not recognized as an internal or external command, operable program or batch file. . Как я уже сказал, верхний ответ не устранил мою проблему. Мне в основном пришлось переустановить nodejs.

Решение

  • Повторно загрузите nodejs
  • npm install -g gulp
  • gulp -version

Это устранило проблему для меня.

Ответ 13

Я удалил node и npm и переустановил под правильным пользователем, чтобы решить проблему. После этого я могу без проблем запускать пакеты из командной строки.

Ответ 14

Попробуйте добавить к переменной PATH следующее:

У меня была та же проблема, и я решил добавить путь к моим модулям node.

Ответ 15

У меня был v0.12.3 из Nodejs на Win7 x64 и столкнулся с подобными проблемами, когда я попытался установить gulp. Это сработало для меня:

  • Uninstalled Nodejs
  • Установленный Nodejs v0.10.29
  • npm install -g npm
  • npm install -g gulp

Ответ 16

Установщик NodeJS, похоже, добавляет путь user/AppData/Roaming/npm к пути пользовательской среды, что подходит.

Обычно переменная среды PATH в командной строке представляет собой комбинацию пути пользовательской среды и пути к системной среде.

Однако, если путь среды пользователя + путь к системной среде превышает примерно 1920 символов, Windows не объединяет пути пользователя и системы - используется только путь к системной среде.

Итак, когда вы открываете дополнительные системные настройки в Windows для редактирования переменных среды, посмотрите, находится ли путь пользователя /AppData/Roaming/npm в вашей пользовательской среде PATH. Если это так, проблема заключается в том, что ваши пути пользователя + системы слишком велики, в результате чего Windows игнорирует ваш пользовательский путь. Обрежьте свои строки пользователя и/или системного пути, а gulp должен работать как установленный.

Если вы не можете найти что-либо, чтобы оторвать от пользователя и системных путей, добавьте путь user/AppData/Roaming/npm к пути к системной среде и назовите его взломом.

Ответ 17

У меня возникла такая же проблема после установки. Поэтому я попытался запустить cmd с повышенными привилегиями (admin), и он сработал.

Захват экрана:

cmd

Ответ 18

Добавьте этот путь в переменные среды PATH C:\Users\USERNAME\AppData\Roaming\НПМ\

Ответ 19

У меня уже было одно условие из этого ответа (я не знаю почему)

То есть мой PATH уже включил %APPDATA%\npm

В моем случае проблема заключалась в том, что npm не устанавливал там модули (опять же, я не знаю почему)

Поэтому мне нужно было сделать это:

$ npm config set prefix -g %APPDATA%/npm

После этого $ npm install -g gulp (или установка любого другого модуля) поместите модуль в место, где его ожидает PATH.

Ответ 20

Не удалось найти команду gulp в Windows 10, а добавление "% AppData%\npm\node_modules" для меня не работает. Выполните следующие шаги:

npm install -g npm

npm install -g gulp

для пути в системных переменных.

Это работает для меня после того, как все решения не помогли мне.

Ответ 21

Это чаще всего потому, что оно не встречается в переменных среды, как указывали другие. Это то, что сработало для меня.

Это покажет вам, какая у вас переменная среды PATH. Если node_modules не существует, добавьте его из своего пути APPDATA.

Ответ 22

Я разрешил это, добавив C:\Users\[USER]\AppData\Roaming\npm до PATH и не C:\Users\[USER]\AppData\Roaming\npm\node_modules

Ответ 23

Выполнить npm install gulp -g

Если вы используете окна, добавьте директорию gulp в PATH.

такие, как C:\Users\YOURNAME\AppData\Roaming\npm\node_modules\gulp

Ответ 24

Это работает для меня:

Ответ 25

Если вы находитесь в Windows и gulp не распознается как внутренняя или внешняя команда, операционная программа или пакетный файл попробуйте запустить gulp.js.

Я работаю над проектом laravel и запускаю gulp локально. Также используйте что-то другое, а затем командную строку Windows, потому что вы, вероятно, получите ошибку с gulp.js. Я использую Git bash, и он отлично работает.

Ответ 26

Ответ 27

sudo npm cache clean

Затем установите gulp, как обычно.

Ответ 28

  • Используя проводник Windows, перейдите к своей общей папке (я использую scotchbox кстати), например C:\scotchbox/public/gulpProject
  • В адресной строке папки введите cmd и нажмите Enter
  • Сделайте установку gulp npm install

Ответ 29

В моем случае ни один из перечисленных подходов не работал. Я наконец загрузил Rapid Environment Editor (версия 8).

Он показал, что моих добавлений к переменным пользовательской среды не было. Когда я добавил их с REE, все сразу сработало.

(запуск Windows 8.1)

Ответ 30

Короче:

Вы должны добавить %NODE_PATH% к системной переменной Path , если другие ответы не работают.

Причина:

Дело в том, что командная строка выполняет только программы под системной переменной Path , а не переменные пользователя. Если у вас NODE_PATH установлен как пользовательская переменная, добавьте %NODE_PATH% в Path .

Я спросил здесь и получил отмеченный дубликат для вопроса с различным намерением:(

Читайте также: