安装 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 gulp
或 npm 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-converter-tjs 时找不到 Python 可执行文件
关于webpack webpack-cli全局安装后找不到webpack命令的解决方案