我显然对 PATH 的作用有误解。我在使用任何已安装的软件包(全局和本地)时遇到问题。到目前为止我尝试做的事情:
npm install -g firebase-tools
npm install -g ionic cordova
软件包安装得很好。当我运行时我可以看到
npm list -g --depth=0
我得到一个列表,其中显示了已安装的 Node 、cordova、firebase 和 ionic 软件包。但是,如果我想通过运行命令来访问这些包中的任何一个,例如
firebase-init
OR
ionic start myApp sidemenu
我在 cmd 中收到相同的错误消息
['firebase']/['ionic'] is not a recognized internal or external command, operable program or batch file.
Nodejs 安装在我的 Program Files(x86)/nodejs
这是我将 PATH 变量设置为:
C:\Program Files\nodejs;
C:\Program Files (x86)\nodejs\node_modules\npm;
C:\Users\...\myproject\node_modules
我在本地完成后添加了最后一条路径
npm install ionic
我可以清楚地看到文件夹中的 ionic 包,但当我尝试运行 ionic 命令时仍然遇到与上面相同的错误。
我真的很沮丧,因为我已经好几个星期都无法解决这个问题了,而且我的项目也因此无法取得任何进展。 :(
注意:我正在使用 WINDOWS 8
最佳答案
解决方案1:在应用程序目录下,将本地项目链接到包
npm link firebase-tools
npm link ionic cordova
解决方案2:问题可能是由于缺少NODE_PATH定义引起的
- 检查环境中是否定义了 NODE_PATH 变量:
echo %NODE_PATH%
(适用于 Windows)
echo $NODE_PATH
(适用于 Linux)
- 如果没有,请定义它:
setx NODE_PATH C:\Users\<Username>\AppData\Roaming\npm\node_modules
(适用于 Windows)
export NODE_PATH=/usr/lib/node_modules
(适用于 Linux)
关于node.js - 无法使用任何已安装的 npm 软件包 : Not Recognized,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29762782/