今天windows本地启动es服务发生了闪退,研究了一下找到了解决方案。
错误可能:
- jdk版本与elasticsearch版本不一致。
- 系统变量JAVA_HOME和Path配置出现问题。
- 中文分词的版本与elasticsearch版本不一致。
- 在elasticsearch.yml文件中的配置有误。
- yml文件编码格式不正确
第一步:首先管理员身份打开cmd的终端
点击以管理员身份运行
第二步:进入es的本地安装目录,找到bin目录
在bin目录下输入dir查看所有文件
第三步:启动elasticsearch.bat找到他的错误信息
在bin目录下输入elasticsearch.bat启动,发生报错。查看Caused by 的后面的错误信息,发现是elasticsearch.yml配置文件的编码格式错误
第四步:思考为什么会有这样的错误
打开我的elasticsearch.yml配置文件 。发现我的注释是中文,所以要使用utf-8的编码格式。
第五步:解决方案
这个yml文件默认不是utf-8。将此文件以utf-8的文件格式存储起来。
第六步:重新运行看看是否可以成功启动
再次启动elasticsearch.bat,没有闪退。
浏览器也可以正常访问
完美解决了启动elasticsearch.bat发生闪退问题。
保险起见,发现bat黑窗口闪烁后关闭
修改config/elasticsearch.yml文件, 添加如下内容预防:
xpack.ml.enabled:false
最后说一句,方法有很多,需要根据不同的问题采取不同的应对措施,发现问题,分析问题,最后解决问题。
版权归原作者 aq_money 所有, 如有侵权,请联系我们删除。