'gulp'不被视为内部或外部命令

问题描述 投票:24回答:7

我正在尝试使用GulpNode.Js来流式传输我的进程来缩小和连接CSS / JS文件以进行生产。

这就是我所做的。

  1. 我在Windows 7机器上安装了Node.Js
  2. 使用此命令npm install -g gulp全局安装Gulp
  3. 然后我添加了一个名为NODE_PATH的新用户变量,将其设置为%AppData%\npm\node_modules

关闭并重新打开命令行后,我尝试从命令行运行gulp任务(即gulp css)。但是这给了我以下错误

'gulp' is not recognized as an internal or external command

我怎样才能让它发挥作用?

当我使用windows中的搜索栏打开以下路径时,%AppData%\npm\node_modules我看到以下两个文件夹

gulp
gulp-cli

enter image description here

我试图将%AppData%\npm\node_modules添加到我的系统变量上的Path变量中,但它没有采用它,因为该变量达到了它允许的最大字符数限制。

我从我的Path变量中删除了几条路径并添加了;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules

但仍然没有工作。

我甚至尝试使用此命令在运行时设置路径

PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules然后运行gulp仍然是相同的问题。

我在这里错过了什么?为了让它发挥作用我还需要什么?

node.js gulp
7个回答
70
投票

我最初在本地安装时遇到类似的问题(w / o -g)。我用-g(全局)重新安装然后它工作了。

npm install -g gulp

你应该从gulpfile.js可用的文件夹中运行gulp。


13
投票

我通过卸载NodeJs和gulp解决了这个问题,然后再次重新安装。

要全局安装gulp,我执行了以下命令

npm install -g gulp

11
投票

My Computer>Properties>Advance System Settings>Environment Variables>

在Administrator的变量下编辑PATH变量并将其值更改为"C:\Users\Username\AppData\Roaming\npm"。注意:路径中的用户名将是您已登录的当前管理员用户的名称。


2
投票

我在Windows 7上遇到了同样的问题。您必须手动编辑路径系统变量。

转到START - >编辑系统环境变量 - >环境变量 - >在系统部分查找变量“路径” - >编辑 - >在“;”后添加新路径你的文件gulp.cmd目录有些像'; C:\ Users \ YOURUSERNAME \ AppData \ Roaming \ npm' - >点击确定并关闭这些窗口 - >重启你的CLI - >享受


0
投票

对不起,这是一个错字。您可以将node_modules添加到用户的全局路径变量的末尾,也可以检查与该文件夹关联的权限(node _modules)。错误似乎不是最后一种情况,但我遇到了类似于你的问题。在大多数情况下,我找到了第一个解决方案。只需转到环境变量并将node_modules的路径添加到用户路径变量的最后部分。注意我说的是用户而不是系统。

只需在变量声明的末尾添加一个分号,并将静态路径添加到node_module文件夹中。 (例如:\ path \ to \ node_module)

或者你可以:

在您的CMD中

PATH=%PATH%;C:\\path\to\node_module

编辑

只要您不关闭CMD,最后的解决方案就会起作用。因此,使用第一个解决方案进行永久性更改。


0
投票

在我的情况下,这个问题发生,因为我之前在我的项目文件夹中与另一个系统用户做了npm install。 Gulp已在全球安装。删除我的项目中的folder / node_modules /,并使用当前用户运行npm install后,它工作正常。


0
投票

您需要确保在运行命令(安装npm -g gulp)时,它将在C:\目录中创建install gulp。

该目录应与您在java路径中设置的npm路径变量匹配。

只需从命令提示符运行路径,并验证这一点。如果没有,在你吞咽的地方改变你的java类路径变量。

它应该工作。

© www.soinside.com 2019 - 2024. All rights reserved.