使用 npm 安装cnpm,grunt后,提示不是内部或外部命令

前言

ElasticSearch6安装head插件时,因为es版本高于2.0版本,需要用到grunt安装。。

安装grunt

1.安装node.js
略….

2.安装grunt
运行下面一条命令

npm install -g grunt-cli

// 正常执行不报错,就ok了

3.查看grunt版本
grunt -v
如下图就证明安装成功,并且系统可以找到grunt..
这里写图片描述

问题

可是!!!!!!!!!!!我的不是啊!what?我的是这个样子?
这里写图片描述

百度呗。
百度结果:
可能是以下几种情况造成的:
1:没有安装全路径
2:没有用64位编码的grunt插件
3:没有管理员权限,这个我实在有点费解,grunt是运行在node上的,为甚需要管理员权限
4:没有配置NODE_PATH 这个我也比较费解,grunt 不识别为何跟nodepath产生关系
5:没有配置path

嗯~~~有点道理,可是试了半天都没用。不行就只有重装了grunt。没用啊 安装是安装成功了,就是运行grunt命令的时候找不到。难道是npm的版本太低?或者node版本问题?
看了一下:
这里写图片描述
都是最新版本了!管他的,再升个级!
npm install -g npm

还是没用。

解决问题

添加系统环境:
C:\Users\Administrator\AppData\Roaming\npm 添加到系统变量path最后面。记得先加一个;号
ps:windows默认的npm module路径是C:\Users\Administrator\AppData\Roaming\npm,有可能不一样,先确定一下。

添加后:path的内容如下:

扫描二维码关注公众号,回复: 2270512 查看本文章
C:\ProgramData\Oracle\Java\javapath;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Git\cmd;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;C:\Program Files\nodejs\;C:\Users\Administrator\AppData\Roaming\npm

重新打开cmd,再次运行grunt -v就ok了。

原来:运行grunt -v时,是找的下图的脚本去运行的,如果没有配置脚本所在的路径到path中,就会找不到,从而提示不是内部或外部命令。如果不配置路径,直接到C:\Users\Administrator\AppData\Roaming\npm下面运行命令是可以的。
这里写图片描述
这里写图片描述

总结

运行grunt -v时,我猜测应该是先查到当前文件夹下面是否存在该脚本,如果没有,去计算机系统环境变量里面找,如果还是没找到,就会提示不是内部或外部命令。

还是对操作系统的处理方式了解太少了啊啊啊啊啊啊啊啊啊啊啊啊!

语录

胜利女神在开玩笑~~
vn:你来了 uzi:我来了 vn:你不该来的,这比三年前还糟糕,不是我的版本…。uzi笑了笑,伸出了手:那又如何,这可能是我最后一个赛季了,你可愿意送我最后一程? vn望着uzi变形的手,眼里噙满泪水,也伸出了自己的手:让我们来猎杀那些陷入黑暗中的人吧!

猜你喜欢

转载自blog.csdn.net/qq_22638399/article/details/80840947
今日推荐