“吞咽”不被识别为内部或外部命令
我正在尝试使用Gulp和Node.Js来为我的stream程缩小和连接生产的CSS / JS文件。
这是我所做的。
- 我在Windows 7机器上安装了Node.Js。
- 使用这个命令
npm install -g gulp
gulp在全局安装Gulp - 然后,我添加了一个名为
NODE_PATH
的新用户variables,将NODE_PATH
设置为%AppData%\npm\node_modules
closures并重新打开我的命令行后,我尝试从命令行(即gulp css
)运行一个吞咽任务。 但是,这给我以下错误
'gulp' is not recognized as an internal or external command
我怎样才能使这个工作?
当我在窗口中使用search栏打开以下path时, %AppData%\npm\node_modules
我看到以下两个文件夹
gulp gulp-cli
我已经尝试将%AppData%\npm\node_modules
到我的系统variables的Path
variables中,但是并没有将它应用,因为该variables达到了最大允许的租借人限制。
我从我的Path
variables中删除了几个path,并添加了;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
但现在还在工作。
我甚至试图使用这个命令在运行时设置path
PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
然后运行PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
并仍然是相同的问题。
我在这里错过了什么? 我还需要什么才能使这个工作?
当我最初在本地安装(w / o -g)时,我有类似的问题。 我用-g(全局)重新安装,然后工作。
npm install -g gulp
你应该从gulpfile.js
可用的文件夹运行gulpfile.js
。
我解决了这个问题,通过卸载NodeJs和gulp并再次安装。
进入My Computer>Properties>Advance System Settings>Environment Variables>
在Administrator的variables下编辑PATHvariables并将其值更改为"C:\Users\Username\AppData\Roaming\npm"
。 注意:path中的用户名将是您login的当前pipe理员用户的名称。
对不起,这是一个错字。 您可以将node_modules添加到用户全局pathvariables的末尾,也可以检查与该文件夹(节点_modules)相关的权限。 该错误似乎不是最后一种情况,但我遇到类似于你的问题。 我发现大多数情况下第一个解决scheme已经足够 只需转到环境variables,并将node_modules的path添加到用户pathvariables的最后部分即可。 注意我说的是用户而不是系统。
只需在variables声明的末尾添加一个分号,并将静态path添加到您的node_module文件夹。 (例如c:\ path \ to \ node_module)
或者,您可以:
在你的CMD
PATH=%PATH%;C:\\path\to\node_module
编辑
只要你不closures你的CMD,最后的解决scheme就会工作。 因此,使用第一个解决scheme进行永久性更改。
在我的情况下,这个问题发生,因为我做了npm install
与另一个系统用户在我的项目文件夹之前安装。 Gulp已经在全球安装。 删除我的项目中的文件夹/ node_modules / ,并与当前用户运行npm install
,它的工作。