Я пытаюсь построить библиотеку GitHub JQuery-UI с помощью grunt
, но после запуска npm install
я до сих пор не могу выполнить команду в соответствии с файлом риого . Это просто дает No command 'grunt' found
:
james@ubuntu:~/Documents/projects/ad2/lib/jquery-ui$ grunt build
No command 'grunt' found, did you mean:
Command 'grun' from package 'grun' (universe)
grunt: command not found
james@ubuntu:~/Documents/projects/ad2/lib/jquery-ui$ npm ls
jquery-ui@1.9.0pre /home/james/Documents/projects/ad2/lib/jquery-ui
├─┬ grunt@0.3.9
│ ├── async@0.1.18
│ ├── colors@0.6.0-1
│ ├─┬ connect@1.8.7
│ │ ├── formidable@1.0.9
│ │ ├── mime@1.2.5
│ │ └── qs@0.5.0
│ ├── dateformat@1.0.2-1.2.3
│ ├─┬ glob-whatev@0.1.6
│ │ └─┬ minimatch@0.2.4
│ │ └── lru-cache@1.0.6
│ ├─┬ gzip-js@0.3.1
│ │ ├── crc32@0.2.2
│ │ └── deflate-js@0.2.2
│ ├── hooker@0.2.3
│ ├─┬ jshint@0.5.9
│ │ ├── argsparser@0.0.6
│ │ └─┬ minimatch@0.2.4
│ │ └── lru-cache@1.0.6
│ ├─┬ nodeunit@0.6.4
│ │ ├── tap-assert@0.0.10
│ │ └─┬ tap-producer@0.0.1
│ │ ├── inherits@1.0.0
│ │ ├── tap-results@0.0.2
│ │ └── yamlish@0.0.5
│ ├─┬ nopt@1.0.10
│ │ └── abbrev@1.0.3
│ ├─┬ prompt@0.1.12
│ │ ├── pkginfo@0.2.3
│ │ └─┬ winston@0.5.11
│ │ ├── eyes@0.1.7
│ │ ├─┬ loggly@0.3.11
│ │ │ └── timespan@2.2.0
│ │ └── stack-trace@0.0.6
│ ├── semver@1.0.13
│ ├─┬ temporary@0.0.2
│ │ └── package@1.0.0
│ ├── uglify-js@1.0.7
│ ├── underscore@1.2.4
│ └── underscore.string@2.1.1
├── grunt-compare-size@0.1.4
├─┬ grunt-css@0.2.0
│ ├── csslint@0.9.8
│ └── sqwish@0.2.0
├── grunt-html@0.1.1
├── request@2.9.153
├─┬ rimraf@2.0.1
│ └── graceful-fs@1.1.8
└─┬ testswarm@0.2.2
└── request@2.9.202
Я в замешательстве, чего мне не хватает, пожалуйста?
sudo
Спасибо, Том!node not found
после запуска вышеуказанной команды и использовали менеджер пакетов для установки узла, то вам также понадобится символическая ссылкаsudo ln -s /usr/local/bin/nodejs /usr/local/bin/node
Добавьте
/usr/local/share/npm/bin/
к вашему$PATH
источник
$HOME/npm/bin
работало для меня на Ubuntu 13.10.Если вы установили пакет Grunt, запустив
npm install -g grunt
его, и он все еще говорит «No command 'grunt' found
или»grunt: command not found
, быстрый и грязный способ получить эту работу - вручную связать двоичные файлы узла с вашим $ PATH.В MacOSX / Linux вы можете добавить эту строку в ваш файл
~/.bash_profile
или~/.bashrc
файл.Возможно, вам следует заменить
/usr/local/Cellar/node/HEAD/bin
путь, по которому можно найти двоичные файлы вашего узла.Если это быстро и грязно для меня, это потому, что все должно работать без этого, но по неизвестной причине ссылка кажется неработающей. Поскольку никто в IRC не мог сказать мне, почему это произошло, я нашел свой собственный способ заставить его (ворчать) работать.
PS: Это должно помочь вам сделать ворчание, этот ответ не связан с jquery-ui.
Обновление 02/2013 : вы должны взглянуть на ответ @ tom-p, который лучше объясняет, что происходит. Том дает нам реальное решение вместо того, чтобы взламывать ваш файл bashrc: оба должны работать, но вы должны
grunt-cli
сначала попытаться установить .источник
В моем случае мне нужно изменить файл / usr / local / bin / grunt в строке 1 (не делайте этого):
Отредактировано:
Чтобы избежать проблем, я создал ссылку с именем «узел», потому что многие другие программы все еще используют команду «узел».
источник
apt-get install nodejs-legacy
.brew install nodejs-leacy
Есть еще один способ запустить grunt для Windows, не добавляя ничего глобально. Это тот случай, когда вам не нужно ничего делать с% PATH%
если у вас установлен grunt и grunt-cli (без ключа -g). Либо
Или имея это в вашем файле packages.json, например:
Вы можете вызвать grunt из вашей локальной системы:
Это решение для тех, кто по каким-то причинам не хочет или не может играть с PATH, или ему постоянно что-то мешает, например, на агенте сборки.
Изменить: Добавлены версии, как работает grunt-cli с grunt> 0.3
источник
На WIN7 мне пришлось вручную добавить путь к папке npm (которая содержит неуловимый файл grunt) в переменную окружения PATH Windows.
В моем случае это было
C:\Users\mhaagsma\AppData\Roaming\npm
источник
Правильный способ установить grunt - запустить эту команду:
(Добавьте «sudo» к приведенной выше команде, если вы получите сообщение об ошибке EACCESS)
-g заставит npm установить пакет глобально, так что вы сможете использовать его, когда захотите, на своем текущем компьютере.
источник
grunt
все равно не получится, потому что пакет grunt не содержит никаких инструментов командной строки. Вам нужноgrunt-cli
.Здравствуйте, у меня была эта проблема на Mac, и то, что я сделал, было
установлен глобально и префикс с глобальным путем
сейчас
$ which grunt
должен положить
/usr/local/bin/grunt
ура
источник
Иногда нужно, чтобы
npm install package_name -g
это работало.источник
Другое решение состоит в том, чтобы удалить упаковщик Ubuntu в моем случае, который я использовал:
Это сработало для меня.
источник
В Windows часть загадки заключается в том, что npm устанавливает файл Grunt.cmd. На моем компьютере с Linux мне просто нужно было запустить sudo npm install -g grunt-cli, на моем рабочем ноутбуке с Windows 8 Grunt был помещен в каталог .npm-global:% USER_HOME% \. Npm-global, и я должен был добавить это к Пути.
Так что на Windows мои шаги были:
npm install -g grunt-cli
выяснить, где, черт возьми, был grunt.cmd (наверное, для некоторых он находится в% USER_HOME% \ App_Data \ Roaming)
Добавил местоположение в мою переменную окружения Path. Открыл новое приглашение cmd и команда grunt работала нормально.
источник
В Windows 10 добавьте это в свой путь:
Это относится к папке
~/AppData/Roaming/npm
[Предполагается, что вы уже бежали
npm install -g grunt-cli
]источник