为什么Grunt不把自己添加到shell中?
我有一个问题安装咕噜声。 所有的文档和博客文章教程说,运行:
npm install -g grunt
然后将允许您从terminal运行grunt命令。
我有一个情况,似乎安装没有错误的咕噜声,但在terminalinput命令咕噜仍然给:
-bash: grunt: command not found
我可能做错了什么? 我在哪里可以findgrunt手动添加到我的BASHconfiguration文件?
由于Grunt版本0.4(它是在1到2周前发布的),你需要在全局安装grunt命令行工具(如果需要,在命令之前使用sudo
):
npm install -g grunt-cli
在您的项目位置,然后安装最新的grunt版本:
npm install grunt --save-dev
选项--save-dev
将把npm
configuration保存在你的package.json文件中,这样可以更容易地安装或重新安装依赖(只使用npm install
)。
尝试使用详细标志运行安装:
npm install -g grunt --verbose
你可以看到它的安装位置(如/ usr / local / share / npm / bin / grunt)。 然后检查你的path:
echo $PATH
如果path不包含安装位置,请修改bashconfiguration文件中的path以包含bin目录的位置,然后在新的terminal中再次尝试grunt。
更新 :Grunt 0.4改变了安装过程。 对于0.4安装,请参阅下面的答案。
看来在当前的版本0.4.0
grunt
不会安装bin命令。 最后的0.3.x
版本是0.3.17
,支持bin命令。 要从命令行运行grunt,您需要安装grunt命令行grunt-cli:
npm install -g grunt-cli --verbose
我已经使用Homebrew安装节点 ,这是我的解决scheme:
-
设置configuration为-g(GLOBAL)安装目录目录: npm config set prefix /Users/YOURNAME/.node/
-
请确保编辑PATH: sudo nano〜/ .profile
-
添加到path: export PATH =“/ Users / YOURNAME / .node / bin:”$ PATH
-
然后更新源: source〜/ .profile
遵循这些步骤将允许使用npm install -g somePKG安装的任何软件包放置在正确的位置,而不pipe您当前的工作目录。 并通过正确更新您的$ PATH命令行function将工作。
信息基于:修复npm权限 – bit.ly/1CmIyqx