全局安装package.json依赖关系

有以下依赖的'package.json'文件:

{ "name": "xxx_web_app", "version": "1.0.0", "description": "", "main": "gulpfile.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { "type": "git", "url": "some.git" }, "author": "", "license": "ISC", "dependencies": { "bower": "^1.4.1", "connect-history-api-fallback": "^1.1.0", "gulp": "^3.8.11", "gulp-clean": "^0.3.1", "gulp-coffee": "^2.3.1", "gulp-connect": "^2.2.0", "gulp-jshint": "^1.10.0", "gulp-minify-css": "^1.1.1", "gulp-sass": "^1.3.3", "gulp-slim": "^0.1.0", "gulp-uglify": "^1.2.0", "gulp-util": "^3.0.4", "gulp-webserver": "^0.9.0" } } 

当我运行' npm install -g '时,我在控制台中看到我的所有依赖项都将被安装。 但是当我尝试执行,例如,gulp(' gulp -v '),我得到了:

 "zsh: command not found: gulp" 

但是如果我执行' npm install -g gulp ',那么这个事情就会很好。 那么,我怎样才能从我的package.json全局安装所有的依赖项,而不需要安装一个呢? 提前致谢!

我的系统是OS X Yosemite。

在包含package.json文件的目录中执行时, npm install -gnpm install --global会将所有软件包安装为全局软件包。

使用npm ls -g来检查这些软件包的安装位置。 添加上面的命令给你合适的shell的path。 看起来你正在使用zsh。

这些步骤应该工作:

cd进入你的主目录并find这个文件.zshrc,然后find该行

 export PATH= 

并修改它,如:

 export PATH="path_to_global_packages:$PATH" 

在terminal上打开新选项卡,以使更改生效并尝试运行gulp -v

注意:最好的做法是在本地为每个项目安装软件包,而不是全局为机器上的所有项目安装软件包。