本地安装与全球安装的NPM模块

在我的package.json文件中,我将bower列为依赖项。 运行npm install之后,bower会在本地安装。 当我在本地安装之后尝试运行bower时,出现错误

"bower" is not recognized as an internal or external command." 

似乎解决这个问题的唯一方法是在全球安装凉亭。 我为什么要这样做? 如果我的项目包含一个本地的凉亭为什么不会节点使用它的副本?

运行Windows 7

在本地安装使得bower可用于当前项目(它将所有节点模块存储在node_modules )。 这通常只适用于像这样使用模块var module = require('module'); 它不能作为shell可以parsing的命令 ,直到你全局安装它npm install -g module其中npm将把它安装在你的pathvariables将parsing这个命令的地方

编辑: 这个文档解释它相当thorougly。

您可以通过在cmd中input以下行来执行本地实例:

 node_modules/bower/bin/bower <bower args> 

通常情况下,如果您希望在path中包括NPM模块,则可以从命令行运行NPM模块。 由于它是在本地安装的,您将不得不从node_modules文件夹运行它。