写在前:
logstash的版本是7.17.11
jdk版本是1.8
网上其他的答案我这里不再去列举了。什么检查JDK是否安装正确呀,如果你不是Java程序员可能要检查下哈,但是如果你是Java程序员我觉得这都不用去检查好不好,第一天就要安装好配置环境的运行起来的,这个肯定是没有问题的。
还有我们可以看下我们的日志输出:

这里很明确的告诉我们当前使用的JDK环境:

所以就不要怀疑是我们的JDK环境错了。都不用再去执行 echo %JAVA_HOME%进行验证了。
我们只要找到bin\startup.bat 文件即可。
我们可以看到日志都有在这里打印,特别是最后一句打印的原因。

我们可以看到这里是因为 %JAVACMD% 没有值。
这里就不再一步一步去定位了,直接上解决方案:
这里就不再多说,直接上解决方案。

问题在这里,如果用我们自己的JDK环境,赋值的语句加了引号,这个是赋值不成功的,严重的bug呀,只要把引号去掉保存运行即可,完全不用改其他的任何地方,任何配置。

再次启动,完全没有任何问题,真是巨坑呀!!!!!
文章指出在Logstash7.17.11版本中,由于启动脚本中JAVACMD变量赋值时使用了引号导致赋值失败,从而引发启动问题。作者建议直接去掉引号以修复此严重bug,无需检查JDK环境或执行其他配置。按照修改后,Logstash能正常启动。

被折叠的 条评论
为什么被折叠?



