grunt: команда не знайдена при запуску з терміналу


100

Я новачок у Грунта. Я намагаюся налаштувати Grunt на моєму Mac OSX Lion.

Я дотримувався тут інструкцій, а потім створив папку проекту, яка містить файли нижче. Коли я намагаюся запустити, набравши "grunt" в термінал, я отримую command not found. Я також змінив свої контури, sudo nano /etc/pathsсподіваючись, що додавання шляху призведе до того, що бігун завдання працює, але він все ще не працює. Чи може хтось допомогти у цьому?

---paths

/usr/bin 
/bin
/usr/sbin
/sbin
/usr/local/bin
/usr/local/bin/grunt


--- files
node modules
Gruntfile.js
package.json

запустіть цю команду з терміналу і додайте вихід до свого питання: який бурчання
Пол Аллен

Привіт Пол, я набрав команду і зовсім не отримав вихід.
user686483


1
Дуп stackoverflow.com/questions/10667381/… - чудова відповідь там.
Повітря

Відповіді:


44

Я здогадуюсь, що ви використовували Brew для встановлення Node, тому посібник тут може бути корисним http://madebyhoundstooth.com/blog/install-node-with-homebrew-on-os-x/ .

Вам потрібно переконатися, що npm / bin знаходиться на вашому шляху, як описано export PATH="/usr/local/share/npm/bin:$PATH". Це місце, в якому npm встановить заглушки для встановлених пакетів.


Нано-версія також буде працювати, як описано тут http://architectryan.com/2012/10/02/add-to-the-path-on-mac-os-x-mountain-lion/, але перезапуск терміналу може бути потрібно, щоб новий шлях був підібраний.


чи можу я додати це за допомогою sudo nano / etc / paths?
user686483

2
Виглядає це як architectryan.com/2012/10/02/…, але використовуйте /usr/local/share/npm/binзамість того, про що у /usr/local/bin/gruntвас є питання
nschonni

1
Я додав шлях за допомогою sudo nano / etc / paths, але в мене ще немає команд
grunt

як мені дістатися до тієї папки в терміналі?
user686483

Мені вдалося приховати папку за допомогою пошуку. Моя папка npm знаходиться під / Users / myusername.
user686483

498

Я вирішив це на Mountain Lion: -

npm install -g grunt-cli 

Побачив це на http://gruntjs.com/getting-started


15
Працював над Мавериками.
Аарон Грінлі

8
Також на linux, (Ubuntu / Elementary OS)
iConnor

4
Потрібно працювати нормально (і, мабуть, краще) без цього sudo.
Меттью Шенлі

2
@MatthewShanley sudoпотрібен, якщо не було встановлено відповідних дозволів на папки під час npmсамої установки .
mostruash

3
Якщо вам потрібно sudo, дозволи невірні, і ви будете потрапляти в більш глибокі проблеми з кожним встановленням. Завжди переконайтеся, що npmможна працювати без sudo.
Лоренс Клінг

12

Для вікон

npm install -g grunt-cli

npm install load-grunt-tasks

Потім бігайте

grunt


1
зовсім не допомогли мені
Dejell

1
Я біжу Windows 10 і тільки довелося бігти «NPM встановити -g чорнову-інтерфейс командного рядка»
Dan

6

Я деякий час полював навколо, намагаючись вирішити цю проблему, і жодне із запропонованих оновлень баш, здавалося, не працює. Я виявив, що в якийсь момент мій npm-корінь був модифікований таким чином, що він вказував на деякий Users/USER_NAME/.node/node_modulesчас, де жила фактична установка npm /usr/local/lib/node_modules. Ви можете перевірити це, запустивши npm rootта npm root -g(для глобальної установки). Щоб виправити шлях, можна зателефонувати npm config set prefix /usr/local.


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

6

Також в OS X (El Capitan) вже цілий ранок виникає ця проблема.

Я запускав команду "npm install -g grunt-cli" з каталогу, де був мій проект.

Я спробував ще раз з домашнього каталогу (тобто 'cd ~'), і він встановлений, як і раніше, за винятком випадків, коли я можу запустити команду grunt, і вона розпізнається.


5

Ключовим моментом є пошук правильного шляху, де був встановлений ваш грунт. Я встановив грунт через npm, але мій шлях до грунту був /Users/${whoyouare}/.npm-global/lib/node_modules/grunt/bin/grunt. Тому після того, як я додав /Users/${whoyouare}/.npm-global/lib/node_modules/grunt/binдо ~/.bash_profile, і source ~/.bash_profileце спрацювало.

Отже, кроки такі:

1. find the path where your grunt was installed(when you installed grunt, it told you. if you don't remember, you can install it one more time)

2. vi ~/.bash_profile

3. export PATH=$PATH:/your/path/where/grunt/was/installed

4. source ~/.bash_profile

Ви можете посилатися на http://www.hongkiat.com/blog/grunt-command-not-found/


Чудова відповідь, працював для мене (Win7 x64). Ось що я помістив у своєму .bash_profile:export PATH=$PATH:/Users/<username>/AppData/Roaming/npm/node_modules/grunt-cli/bin/grunt
срібло

Також перевірте ~/.npm-packages/lib/node_modules/grunt-cli/bin/grunt(OS X High Sierra)
кубілай
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.