安装 Gulp 后:“找不到命令 'gulp'”

Posted

技术标签:

【中文标题】安装 Gulp 后:“找不到命令 \'gulp\'”【英文标题】:After installation of Gulp: “no command 'gulp' found”安装 Gulp 后:“找不到命令 'gulp'” 【发布时间】:2014-04-09 02:37:26 【问题描述】:

在通过 npm 安装 gulp.js 后,从安装它的同一目录运行 gulp 命令时收到 no command 'gulp' found 错误。

node_modules/.bin/ 目录下查看时,我可以在那里看到gulp 可执行文件。

我的 npm 安装有问题吗?

【问题讨论】:

您是否进行了全局安装? npm install gulp -g 我遇到了同样的问题。我进行了全局安装,但仍然没有... 这个链接一定能帮到你***.com/a/45707907/5222115 【参考方案1】:

这很正常。 如果你想让gulp-cli 在命令行中可用,你需要全局安装它。

npm install --global gulp-cli

见the install instruction。

另外,node_modules/.bin/ 不在您的$PATH 中。但它是在运行 npm 脚本时由 npm 自动添加的(参见 this blog post for reference)。

因此您可以将scripts 添加到您的package.json 文件中:


    "name": "your-app",
    "version": "0.0.1",
    "scripts": 
        "gulp": "gulp",
        "minify": "gulp minify"
    

然后您可以运行 npm run gulpnpm run minify 来启动 gulp 任务。

【讨论】:

我被要求以 sudo (Root . Admin) 的身份运行 npm install -g gulp 但是如果我这样做,那么当我退出普通用户时它找不到 gulp 命令。我不认为我宁愿让我的环境正常工作的一切都保持根基。所以任何人都知道可能导致这个问题的原因.. 我想这完全取决于节点的安装方式/位置。使用github.com/creationix/nvm时,无需root即可安装全局库。 我想我使用 mac OSX 上的安装程序来安装 nodejs.org 我不知道 nodejs 和 node @£$@ 之间的区别 请记住,gulp 本身不再是一个全局包。相反,global-cli 是 (npm -i -g gulp-cli) 并且实际上应该首先卸载全局 gulp!【参考方案2】:

其实我也有同样的问题。

这个链接可能是我最好的猜测:

nodejs vs node on ubuntu 12.04

我这样做是为了解决我的问题:

sudo apt-get --purge remove node 
sudo apt-get --purge remove nodejs 
sudo apt-get install nodejs
sudo ln -s /usr/bin/nodejs /usr/bin/node

【讨论】:

你还需要sudo ln -s /usr/bin/nodejs /usr/bin/node,因为那里有很多应用程序/包寻找它。 ln -s [target] [name|directory] 命令创建一个符号链接(“别名”或“快捷方式”)。见linuxcommand.org/man_pages/ln1.html 仍然不能在这里工作......伙计,我觉得这很微不足道。但是来自另一个 SO 页面的这个链接得到了正确的答案。只需在本地运行***.com/questions/36457377/…【参考方案3】:

我没有使用以下命令重新安装节点就解决了这个问题:

$ npm uninstall --global gulp gulp-cli
$ rm /usr/local/share/man/man1/gulp.1
$ npm install --global gulp-cli

【讨论】:

一个稍微更新的版本对我有用,因为我使用 NVM 来管理我的节点环境:$ npm uninstall -g gulp gulp-cli$ rm /Users/[usrName]/.nvm/versions/node/[nodeVersion]/share/man/man1/gulp.1$ npm install -g gulp-cli 全球化是个坏主意。【参考方案4】:

我解决了删除 gulp 并再次安装 gulp-cli 的问题:

rm /usr/local/bin/gulp
npm install -g gulp-cli

【讨论】:

也需要使用sudo 需要使用 sudo,但这终于奏效了【参考方案5】:

在 Mac 上安装 - Sierra - 在多次尝试通过命令行使用几个不同的指令全局安装和运行 gulp 失败后,我发现我将其添加到我的路径中并且它有效:

export PATH=/usr/local/Cellar/node/7.6.0/libexec/npm/bin/:$PATH

我在安装 gulp 时从文本输出中获得了该路径。

【讨论】:

【参考方案6】:

用 sudo 试过了,效果很好!!

sudo npm install --global gulp-cli

【讨论】:

请了解--global 的含义以及这不能解决其他人计算机上的问题。【参考方案7】:

如果仍未解决,请尝试将其添加到您的 package.js 脚本中

"scripts": "gulp": "gulp" ,

然后运行npm run gulp 它会从 gulpfile.js 运行 gulp 脚本

【讨论】:

【参考方案8】:

我在 lubuntu 19.10

我使用了以前答案的组合,并没有调整 $PATH

    npm uninstall --global gulp gulp-cli 这会删除任何已经存在的包。 sudo npm install --global gulp-cli 以 root 用户身份重新安装。

如果你想复制和粘贴

npm uninstall --global gulp gulp-cli && sudo npm install --global gulp-cli 

应该有效

我猜--global 在这里是不必要的,因为它是使用sudo 安装的,但我使用它以防万一。

【讨论】:

【参考方案9】:

在我的情况下,只是在 package.json 的脚本部分中输入“gulp”:“gulp”,然后使用命令 npm run gulp。

【讨论】:

以上是关于安装 Gulp 后:“找不到命令 'gulp'”的主要内容,如果未能解决你的问题,请参考以下文章

找不到模块错误的 gulp 命令

安装 gulp-converter-tjs 时找不到 Python 可执行文件

关于webpack webpack-cli全局安装后找不到webpack命令的解决方案

无法让 Gulp 运行:找不到模块“gulp-util”

Gulp 错误:找不到模块 'jshint/src/cli'

有啥方法可以检查您安装的 gulp 版本吗?