Після встановлення Gulp: "жодної команди" gulp "не знайдено"


250

Після установки gulp.js через npm, я отримую no command 'gulp' foundпомилку під час запуску gulpкоманди з того самого каталогу, в який вона була встановлена.

Заглядаючи під node_modules/.bin/каталог, я бачу gulpтам виконаний файл.

Щось не так з моєю установкою npm?


9
ви зробили глобальну установку? npm install gulp -g
Мукеш Соні

2
У мене така ж проблема. Я зробив глобальну установку, і все ще нічого ...
iluvpinkerton

Це посилання, безсумнівно , допоможе вам stackoverflow.com/a/45707907/5222115
Муртуза Хуссейн

Відповіді:


476

Це абсолютно нормально. Якщо ви хочете, щоб це було gulp-cliдоступне в командному рядку, вам потрібно встановити його в усьому світі.

npm install --global gulp-cli

Дивіться інструкцію з установки .

Крім того, node_modules/.bin/немає у вашому $PATH. Але він автоматично додається npm при запуску npm-скриптів (див. Цю публікацію в блозі для ознайомлення ).

Отже, ви можете додати scriptsдо свого package.jsonфайлу:

{
    "name": "your-app",
    "version": "0.0.1",
    "scripts": {
        "gulp": "gulp",
        "minify": "gulp minify"
    }
}

Потім можна запустити npm run gulpабо npm run minifyзапустити завдання із глоткою.


2
Мене просять запустити npm install -g gulp як sudo (Root. Admin), але якщо я це роблю, тоді, коли я виходжу до звичайного користувача, він не може знайти команду gulp. Я не думаю, що добре залишатися в корені для всього, що я вважаю за краще, щоб моє оточення працювало належним чином. Тож хтось знає, що може спричинити це питання, pls ..
приземлився

Я думаю, все залежить від того, як / де був встановлений вузол. Використовуючи github.com/creationix/nvm , вам не потрібно мати root, щоб встановлювати глобальні libs.
Брайан Клозел

Я думаю, що я застосував інсталятор на Mac OSX для встановлення nodejs.org Я не знаю різниці між nodejs і node @ £ $ @
приземлився

3
Будь ласка, майте на увазі, що сама глотка вже не є глобальним пакетом. Натомість global-cli є (npm -i -g gulp-cli), і глобальний gulp насправді слід спочатку видалити!
Рікардо Магалхес

14

Я вирішив проблему без перевстановлення вузла за допомогою наведених нижче команд:

$ npm uninstall --global gulp gulp-cli
$ rm /usr/local/share/man/man1/gulp.1
$ npm install --global gulp-cli

1
Трохи оновлена ​​версія цього працювала для мене, оскільки я використовую NVM для управління своїм середовищем Node:$ npm uninstall -g gulp gulp-cli $ rm /Users/[usrName]/.nvm/versions/node/[nodeVersion]/share/man/man1/gulp.1 $ npm install -g gulp-cli
JustJen

12

У мене насправді те саме питання.

Це посилання, мабуть, найкраще здогадується:

nodejs vs node на ubuntu 12.04

Я зробив це, щоб вирішити свою проблему:

sudo apt-get --purge remove node 
sudo apt-get --purge remove nodejs 
sudo apt-get install nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node

8
Вам також потрібно, sudo ln -s /usr/bin/nodejs /usr/bin/nodeоскільки так багато додатків / пакетів шукають саме там.
Сет

1
ln -s [target] [name|directory]Команда створює символічне посилання ( «псевдонім» або «ярлик»). Дивіться linuxcommand.org/man_pages/ln1.html
визначає

все ще не працюю тут ... Людина, я начебто думаю, що це банально. Але це посилання з іншої сторінки SO отримало правильну відповідь. Просто запустіть його локально stackoverflow.com/questions/36457377 / ...
swdev


3

якщо це все-таки не вирішено, спробуйте додати це до своїх package.jsсценаріїв

"scripts": { "gulp": "gulp" },

і запустити npm run gulp він буде виконувати скрипти скриптів із gulpfile.js


1

Встановлення на Mac - Sierra - Після численних невдалих спроб встановити та запустити глобально за допомогою командного рядка за допомогою декількох різних інструкцій, я знайшов, що я додав це до свого шляху, і воно спрацювало:

export PATH=/usr/local/Cellar/node/7.6.0/libexec/npm/bin/:$PATH

Я отримав цей шлях з виводу тексту під час встановлення gulp.


0

Спробував з судо, і це спрацювало !!

sudo npm install --global gulp-cli

0

Я на лубунту 19.10

Я використав комбінацію попередніх відповідей, і не підкоригував $PATH.

  1. npm uninstall --global gulp gulp-cli Це видаляє будь-який пакет, якщо вони вже є.
  2. sudo npm install --global gulp-cli Перевстановіть його як root користувача.

Якщо ви хочете зробити копіювати та вставити

npm uninstall --global gulp gulp-cli && sudo npm install --global gulp-cli 

повинен працювати

Я думаю --global, тут непотрібно, як це встановлено за допомогою sudo, але я використовував його на всякий випадок.


0

у моєму випадку виникло лише питання, просто поставте "gulp": "gulp" у частині сценарію, package.json, а потім використовуйте команду npm run gulp.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.