我已经使用
在全局和本地安装了gulpnpm install gulp
npm install gulp -g
npm install gulp-util
npm install gulp-util -g
当尝试运行gulp时我得到
'gulp' is not recognized as an internal or external command, operable program or batch file.
运行npm list gulp(或-g),我gulp@3.7.0
,其中包含我的全局或本地gulp安装的位置。
我尝试运行node gulpfile.js
指向我的gulpfile,它运行时没有错误,当然,它以require('gulp')
开头。
有关让gulp在Windows(8.1)上工作的任何建议吗?
答案 0 :(得分:211)
您忘了安装gulp-cli包:
Reducer
然后您可以从命令行运行命令“gulp”。
答案 1 :(得分:205)
问题和答案可以在这个问题中找到:https://stackoverflow.com/a/9588052/1041104
诸如gulp之类的npm模块未安装到路径中。因此,当您在CMD中运行它们时找不到。
如果已全局安装gulp,您可以使用以下流程:
NODE_PATH
%AppData%\npm\node_modules
或%AppData%\npm
正在运行npm ls
和npm ls -g
表明它们已安装,但由于the missing link
,CMD无法找到它们。
答案 2 :(得分:78)
gulp.cmd
(使用Windows搜索) gulp.cmd
(C:\Users\XXXX\AppData\Roaming\npm
)的路径 PATH
环境变量并添加%APPDATA%\npm
将%APPDATA%\npm
添加到路径的前面,而不是路径的末尾。
答案 3 :(得分:43)
全局安装gulp。
npm install -g gulp
在项目中本地安装gulp。
npm install gulp
在package.json
中添加以下行 "scripts": {
"gulp": "gulp"
}
运行gulp。
npm run gulp
这对我有用。
答案 4 :(得分:33)
我使用的是Windows 8.1。我遇到了同样的问题。
我使用Node.js命令提示符
安装了gulpnpm install -g gulp
然后转到Node.js命令提示符中的所需目录并尝试
gulp -v
如果找不到gulp本地版本退出当前的Node.js命令提示符并在新的Node.js命令提示符中尝试上述命令
我尝试了@SteveLacy提到的NODE_PATH,但是命令提示符仍然无法检测到gulp命令
答案 5 :(得分:24)
有同样的问题,不是真正的最佳解决方案,而是全局安装:
npm install -g gulp
当然最好仍然在package.json
中使用它,因此您可以执行以下操作在本地安装它并在package.json
中添加一个条目:
npm install --save-dev gulp
其他一切(gulp插件)也在本地安装。
答案 6 :(得分:16)
简单的解决方案就是npm link gulp
答案 7 :(得分:15)
当我试图让gulp在同事VM上工作时,我遇到了同样的问题。似乎问题源于用户文件夹。
在我的环境变量中添加NODE_PATH并没有解决问题。
如果你编辑了你的路径'系统变量中的变量并添加'%APPDATA%\ npm'最后,它应该解决问题...除非你或其他人npm安装gulp作为另一个用户而不是你当前登录的用户。
如果您希望所有用户都可以使用它,请明确地放置' C:\ Users \ yourUser \ AppData \ Roaming \ npm'(或者您曾经有过gulp),而不是使用' %APPDATA%\ NPM&#39 ;.您还可以将文件移动到更加用户无关的路径。
不要忘记启动新的cmd提示,因为您打开的提示无法获得新的'路径'自动变量。
现在' gulp'。
答案 8 :(得分:14)
一种正确的方式:
答案 9 :(得分:11)
您应首先使用以下方式安装gulp
全球:
npm install gulp -g
否则路径解决方案无法解决问题。
然后使用以下命令将npm模块路径添加到PATH:
PATH = %PATH%;%APPDATA%\npm
答案 10 :(得分:9)
尝试将以下内容添加到PATH变量中:
C:\Users\YOUR_USER\AppData\Roaming\npm
我遇到了同样的问题,我解决了添加路径模块的路径。
答案 11 :(得分:8)
我在Windows 10中设置了类似的问题。我的答案是特定于Windows的(查看bash中针对linux或OSX解决方案修改路径的答案)
我遇到的核心问题是npm的文件夹未在路径中注册。 我最初尝试在cmd提示符下更改此内容。
setx path "%path%;%appdata$\npm"
请注意,我使用setx而不是set来确保保留对环境变量的更新。另请注意,这是一个反斜杠。
这应该有用,但对我来说并不是因为setx的限制只能接受1024个字符......(是的,这对我来说也是荒谬的)。
所以试试上面的内容,如果你收到类似于达到1024限制的警告,那么你可以采取我最终做的另一种方式。
首先,当您仍然在控制台中时,键入:echo %appdata%\npm
...这是您要添加到路径的npm文件夹,因此请将其添加到剪贴板。
您必须进入注册表并访问以下文件夹:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
然后在剪贴板中附加带有npm文件夹路径的“Path”值。重新启动以激活新值,现在你应该好了。
最后,只需测试一下
>npm install -g gulp
>gulp
答案 12 :(得分:6)
这最终成为了一名用户'我的问题。我在系统上安装了npm和node作为user1登录,然后我设置了user2。我可以运行node,我可以运行npm commnds,但是无法从命令行运行任何npm包。
我卸载了节点和npm,并在正确的用户下重新安装以解决问题。之后,我可以毫无问题地从命令行运行包。
答案 13 :(得分:6)
最佳答案对我不起作用。
我正在使用拥有前任所有者的虚拟机。之前的所有者安装了旧版本的npm。使用它,我使用npm install -g gulp
全局安装gulp。运行命令gulp
将返回'gulp' is not recognized as an internal or external command, operable program or batch file.
。正如我所说,顶部的答案没有解决我的问题。我基本上不得不重新安装nodejs。
<强>解决方案强>
npm install -g gulp
gulp -version
这解决了我的问题。
答案 14 :(得分:4)
答案 15 :(得分:4)
在环境变量路径中添加此路径 C:\ Users \用户名\应用程序数据\漫游\ NPM \
答案 16 :(得分:4)
NodeJS安装程序似乎将用户/ AppData / Roaming / npm路径添加到用户环境路径,这是合适的。
通常,命令行中的PATH环境变量是用户环境路径和系统环境路径的组合。
但是,如果用户环境路径+系统环境路径大于约1920个字符,则Windows不会合并用户和系统路径 - 仅使用系统环境路径。
请参阅:https://stackoverflow.com/a/21270921/301152
因此,当您在Windows中打开“高级系统设置”以编辑环境变量时,请查看用户/ AppData / Roaming / npm路径是否已存在于您的用户环境PATH中。如果是,那么问题是您的用户+系统路径太长,导致Windows忽略您的用户路径。修剪用户和/或系统路径字符串,gulp应该按安装的方式工作。
如果您无法找到可以从用户和系统路径中删除的任何内容,请将user / AppData / Roaming / npm路径添加到系统环境路径并将其称为hack。
答案 17 :(得分:4)
我在Win7 x64上安装了Nodejs的v0.12.3,当我尝试安装gulp时遇到了类似的问题。这对我有用:
答案 18 :(得分:3)
我已经从这个答案得到了一个条件(我不知道为什么)
https://stackoverflow.com/a/27295145/1175496
也就是说,我的PATH已包含let piece = pieces.filter { $0.hashValue == 25 }[0]
在我的情况下,问题是 npm没有在那里安装模块(再次,我不知道为什么)
因此我需要这样做:
%APPDATA%\npm
之后,跑步
$ npm config set prefix -g %APPDATA%/npm
(或安装任何其他模块)将模块放在PATH期望的位置。
答案 19 :(得分:3)
这对我有用:
npm link gulp
npm update
答案 20 :(得分:3)
在我的Windows 10企业版上,gulp未安装在我的计算机上的%AppData%中,即C:\ Users \ 用户名 \ AppData \ npm \ node_modules,但在C:\ Users \ 用户名的\应用程序数据\本地\ NPM \ node_modules。
为了在命令提示符或powershell中获取gulp,我向用户PATH添加了值 C:\ Users \ username \ AppData \ Local \ npm 。之后,它就像一个魅力。当然,我必须关闭命令提示符或powershell窗口并重新打开以使上述操作生效。
答案 21 :(得分:3)
这是最常见的,因为在其他人指出的环境变量中找不到它。这对我有用。
echo%PATH%
这将显示您的PATH环境变量是什么。如果node_modules不存在,则执行以下操作以从APPDATA路径添加它。
PATH =%PATH%; %APPDATA%\ npm
答案 22 :(得分:3)
就我而言,这是我必须安装的
通过命令npm -g install gulp-cli
答案 23 :(得分:2)
(Windows 10)我不喜欢路径答案。我为node.js使用choco包管理器。 Gulp不会为我解雇,除非是:
全球安装npm i -g gulp
和本地目录 npm i --save-dev gulp
问题一直持续到这一次,这是由完全删除node.js并重新安装而修复的。
我没有看到有关本地/全局和 node.js删除/重新安装的任何评论。
答案 24 :(得分:2)
如果其他答案不起作用,您应该将%NODE_PATH%
添加到系统变量Path
。
关键是,命令提示符只执行 Path
系统变量下的程序,而不是用户变量。如果您将NODE_PATH
设置为用户变量,请将%NODE_PATH%
添加到Path
。
我在这里问了一下,并且对于一个有不同意图的问题得到了重复标记:(
NPM Windows doesn't execute program under the User Variable path [duplicate]
答案 25 :(得分:2)
在Windows中:
C:\scotchbox/public/gulpProject
cmd
并按 Enter npm install
答案 26 :(得分:2)
我通过添加来解决它
C:\Users\[USER]\AppData\Roaming\npm
到PATH
并不是
C:\Users\[USER]\AppData\Roaming\npm\node_modules
答案 27 :(得分:1)
在Windows中:
答案 28 :(得分:1)
当您安装gulp global时,您需要转到
C:\的NodeJS \ node_modules \ NPM \ NPM
你做了
SHIFT +右键单击
选择“在此处打开命令提示”
从该cmd窗口运行gulp
答案 29 :(得分:1)
就我而言,列出的方法都没有奏效。我终于下载了Rapid Environment Editor(第8版)。
它表明我对用户环境变量的添加不存在。当我用REE添加它们时,一切都立即起作用。
(运行Windows 8.1)
答案 30 :(得分:1)
如果您需要按照gulpjs.com网站上的说明安装全局版本gulp但仍有问题,则可能需要清理npm的缓存。例如,如果您之前安装了gulp并设法将其意外吹走,则可能无法再次正确安装,因为它正在寻找不再存在的目录。在这种情况下,运行:
sudo npm cache clean
然后像往常一样安装gulp。
答案 31 :(得分:1)
导航到cmd中安装节点模块的位置,直到.bin文件夹,然后运行gulp。即路径\ node_modules.bin&GT;&GT;咽
这对我很有帮助。我的路径是C:\ wamp \ www \ wyntonv2 \ node_modules.bin
答案 32 :(得分:1)
如果您 Windows 且 gulp 无法识别作为内部或外部命令,可运行的程序或批处理文件<强>尝试改为运行 gulp.js 。
我正在开展一个laravel项目,并在本地运行gulp。还可以使用 Windows命令提示符之外的其他内容,因为gulp.js 可能会出现错误。我正在使用 Git bash ,而且效果很好。
答案 33 :(得分:1)
我遇到了这个问题。我通过在路径环境变量中添加%APPDATA%/ npm来解决此问题。我没有定义NODE_PATH变量,但仍然对我有用。希望这对其他人有用!
答案 34 :(得分:0)
除了对我没有任何帮助
以管理员身份运行powershell并执行Set-ExecutionPolicy RemoteSigned
。
更多详细信息:PowerShell says "execution of scripts is disabled on this system."
答案 35 :(得分:0)
以管理员身份运行Power-shell。
然后运行此命令
Set-ExecutionPolicy Unrestricted
小心使用
答案 36 :(得分:0)
上面的解决方案很棒,但在这里我想分享一个针对现有项目的解决方案,在这个项目中,这个问题被多次报告,因为我们用来重新安装 Gulp 等等。
问题环境:-
解决方案:-
第一个选项:- 将项目目录的节点版本从 v14.15.0 更改为 v10.24.0,并且 Gulp 命令运行良好。
第二个选项:-。使用当前版本的 Node v14.15.0 重新安装所有包和 Gulp。
希望对大家有所帮助。
答案 37 :(得分:-1)
所以我还没有看到这个答案,NODE_PATH
和所有其他所谓的环境变量修复都没有做任何事情,所以我想我会加入我的蛮力方式来获得这个工作:
显然,您安装了最新的node.js
并执行了npm install
。我还必须首先升级一些依赖项(当我尝试安装gulp时会收到警告,在我运行这些命令之前,它告诉我它缺少popper.js
依赖Bootstrap 4 - 尽管它实际上是好的,在那个部门!):
npm install -g minimatch
(回车)
npm install -g graceful-fs
(回车)
我看到的时候npm install -g gulp
再一次(虽然它未能运行),但它却把它放进去了
的 C:\用户\ MYNAME \应用程序数据\漫游\ NPM \ node_modules 强>
因为我从命令行运行gulp
cd
'到我的项目文件夹:
C:\ Users \ myname \ Documents \ Visual Studio 2015 \ Projects \ myproject
我怀疑它对其他地方一无所知。我的package.json也没有:
"scripts":{
"gulp": "gulp"
}
相反,它有:
"scripts":{
"start": "gulp"
}
无论如何,它无法运行gulp
,即使它已经安装到项目中。我想在这一点上,如果我运行start
而不是gulp
,它可能已经有效,但我在"gulp"
和另一行之后添加了一个逗号:
"scripts":{
"start": "gulp",
"gulp": "gulp"
}
然后我复制了gulp
文件夹
的 C:\用户\ MYNAME \应用程序数据\漫游\ NPM \ node_modules \吞强>
至
C:\ Users \ myname \ Documents \ Visual Studio 2015 \ Projects \ myproject \ node_modules \ gulp
之后它运作良好。
答案 38 :(得分:-2)
这些答案都没有对我有用。因为我的问题是gulp命令被Antivirus阻止。我已成功地在全球和本地安装了Gulp。我是卡巴斯基的防病毒软件,一旦我在防病毒防火墙中使用了它,就像魅力一样。
答案 39 :(得分:-2)