前言
在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的内容如下:
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变形的手,眼里噙满泪水,也伸出了自己的手:让我们来猎杀那些陷入黑暗中的人吧!