我在全局和本地都安装了gulp

npm install gulp
npm install gulp -g
npm install gulp-util
npm install gulp-util -g

当我试图奔跑时,我得到了

“gulp”不能被识别为内部或外部命令、可操作程序或批处理文件。

运行npm list gulp(或-g),我gulp@3.7.0我的全局或本地gulp安装的位置。

我已经尝试运行节点gulpfile.js指向我的gulpfile,它运行没有错误,当然,它以require('gulp')开始。

对于如何在Windows(8.1)上快速工作,有什么建议吗?


当前回答

上面的解决方案很棒,但在这里我想分享一个现有项目的解决方案,这个问题被报告了很多次,因为我们用它重新安装Gulp和所有。

发行环境:-

当前操作系统:—Windows 10 x64位。 使用Node v10.24.0以前版本的Gulp项目,现在不使用Node v14.15.0。

解决方案:

第一个选项:—项目目录的节点版本从v14.15.0更改为v10.24.0, Gulp命令运行正常。 第二个选项:-。重新安装节点v14.15.0当前版本的所有包和Gulp。

希望这对大家有所帮助。

其他回答

我在Win7 x64上安装了v0.12.3版本的Nodejs,在尝试安装gulp时遇到了类似的问题。这招对我很管用:

卸载Nodejs 已安装Nodejs v0.10.29 安装NPM NPM安装-g gulp

对我来说,是我必须安装 通过命令NPM -g install Gulp-cli

上面的解决方案很棒,但在这里我想分享一个现有项目的解决方案,这个问题被报告了很多次,因为我们用它重新安装Gulp和所有。

发行环境:-

当前操作系统:—Windows 10 x64位。 使用Node v10.24.0以前版本的Gulp项目,现在不使用Node v14.15.0。

解决方案:

第一个选项:—项目目录的节点版本从v14.15.0更改为v10.24.0, Gulp命令运行正常。 第二个选项:-。重新安装节点v14.15.0当前版本的所有包和Gulp。

希望这对大家有所帮助。

所以我还没有看到这个答案,NODE_PATH和所有其他所谓的环境变量修复没有做任何事情,所以我想我应该添加我的暴力方式来让它工作:

显然,你安装了最新的node.js,然后进行npm install。我还必须先升级一些依赖项(当我试图安装gulp时,得到了这些警告,在我运行这些命令之前,它告诉我它缺少popper.js依赖项Bootstrap 4所需的-即使它实际上在那个部门是ok的!):

npm install -g minimatch(输入)

npm install -g graceful-fs(输入)

我看到当我执行npm install -g gulp时,再次,尽管(并且它无法运行),它正在把它放进去 C:\Users\myname\AppData\Roaming\npm\ node_modules

因为我从命令行运行gulp,它被cd到我的项目文件夹中: C:\Users\myname\Documents\Visual Studio 2015\Projects\myproject

我怀疑它对另一个地方一无所知。还有我的包裹。Json没有:

"scripts":{
    "gulp": "gulp"
 }

相反,它有:

"scripts":{
    "start": "gulp"
 }

因此,即使已经安装到项目中,它也不能运行gulp。我想在这一点上,如果我运行start而不是gulp,它可能会工作,但我在“gulp”和另一行后面添加了一个逗号:

"scripts":{
    "start": "gulp",
    "gulp": "gulp"
 }

然后复制gulp文件夹 C:\Users\myname\AppData\Roaming\npm\ node_modules \吞咽 来 C:\Users\myname\Documents\Visual Studio 2015\Projects\myproject\node_modules\gulp

在那之后它运行得很好。

在我的Windows 10企业版上,gulp没有安装在%AppData%中,即c:\ users \用户名\AppData\npm\node_modules,而是安装在c:\ users \用户名\AppData\ local \npm\node_modules中。

为了在命令提示符或powershell中提取gulp,我在用户PATH中添加了值C:\Users\username\AppData\Local\npm.从那以后,它就像魔法一样有效。当然,我必须关闭命令提示符或powershell窗口,并重新打开以上生效。