安装了ElasticSearch5.5.1后,每次启动服务的时候,都是启动了一下就自动停止了。查看了一下EventViewer, 错误信息如下:

Application: elasticsearch.exe

Framework Version: v4.0.30319

Description: The process was terminated due to an unhandled exception.

Exception Info: Elastic.ProcessHosts.Process.StartupException

at Elastic.ProcessHosts.Process.ProcessBase.HandleException(System.Exception)

at System.Reactive.ObserverBase`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].OnError(System.Exception)

at System.Reactive.Observer`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].OnError(System.Exception)

at System.Reactive.Linq.ObservableImpl.AsObservable`1+_[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].OnError(System.Exception)

at System.Reactive.AutoDetachObserver`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].OnErrorCore(System.Exception)

at System.Reactive.ObserverBase`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].OnError(System.Exception)

at Elastic.ProcessHosts.Process.ObservableProcess+<>c__DisplayClass22_0.<CreateProcessExitSubscription>b__0(System.Reactive.EventPattern`1<System.Object>)

at System.Reactive.AnonymousSafeObserver`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].OnNext(System.__Canon)

at System.EventHandler.Invoke(System.Object, System.EventArgs)

at System.Diagnostics.Process.OnExited()

at System.Diagnostics.Process.RaiseOnExited()

at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)

at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)

at System.Threading._ThreadPoolWaitOrTimerCallback.PerformWaitOrTimerCallback(System.Object, Boolean)

 

看不出来什么。

用命令行定位到ElasticSearch的安装目录,在命令行运行elasticsearch.exe, 错误信息如下:

C:\Program Files\Elastic\Elasticsearch\bin>elasticsearch.exe

java.lang.UnsupportedClassVersionError: org/elasticsearch/bootstrap/Elasticsearc

h : Unsupported major.minor version 52.0

at java.lang.ClassLoader.defineClass1(Native Method)

at java.lang.ClassLoader.defineClass(ClassLoader.java:800)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:14

2)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)

at java.net.URLClassLoader.access$100(URLClassLoader.java:71)

at java.net.URLClassLoader$1.run(URLClassLoader.java:361)

at java.net.URLClassLoader$1.run(URLClassLoader.java:355)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:354)

at java.lang.ClassLoader.loadClass(ClassLoader.java:425)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

 

 

Exception in thread "main"

 

看来是Java的版本不对。然后再在命令行运行elasticsearch.exe --debug-env, 结果如下:

C:\Program Files\Elastic\Elasticsearch\bin>elasticsearch.exe --debug-env

-------------

Elasticsearch

-------------

ES_HOME (in order of precedence)

- HomeDirectoryProcessVariable = C:\Program Files\Elastic\Elasticsearch\

- HomeDirectoryUserVariable =

- HomeDirectoryMachineVariable = C:\Program Files\Elastic\Elasticsearch\

- From executable location = C:\Program Files\Elastic\Elasticsearch

ES_CONFIG (in order of precedence)

- ConfigDirectoryProcessVariable = C:\ProgramData\Elastic\Elasticsearch\config

- ConfigDirectoryUserVariable =

- ConfigDirectoryMachineVariable = C:\ProgramData\Elastic\Elasticsearch\config

- Fallback to ES_HOME = C:\Program Files\Elastic\Elasticsearch\config

 

-------------

Java

-------------

Java paths

- current = C:\Program Files\Java\jdk1.7.0_67\bin\java.exe

Java Candidates (in order of precedence)

- JavaHomeProcessVariable =

- JavaHomeUserVariable =

- JavaHomeMachineVariable =

- JdkRegistry64 = C:\Program Files\Java\jdk1.7.0_67

- JreRegistry64 = C:\Program Files\Java\jre1.8.0_144

- JdkRegistry32 =

- JreRegistry32 = C:\Program Files (x86)\Java\jre1.8.0_111

Java checks

- Using32BitJava = False

- JAVA_HOME as machine and user variable = False

 

搜索了一下错误信息:

org/elasticsearch/bootstrap/Elasticsearc h : Unsupported major.minor

 

上面说的是ElasticSearch5.0至少需要Java8。 于是安装了Java8 Update.

结果还是一样。难道需要重新安装ElasticSearch?

于是卸载重新安装。重新安装了还是不行。

仔细看了一下--debug-env的结果,发现jre虽然已经更新到了8,但是jdk还是7,那么就重新安装JDK8试试吧。

JDK8的下载地址在这里:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

安装后再运行--debug-env, 发现jdk和jre都是8了。

C:\Program Files\Elastic\Elasticsearch\bin>elasticsearch.exe --debug-env

-------------

Elasticsearch

-------------

ES_HOME (in order of precedence)

- HomeDirectoryProcessVariable = C:\Program Files\Elastic\Elasticsearch\

- HomeDirectoryUserVariable =

- HomeDirectoryMachineVariable = C:\Program Files\Elastic\Elasticsearch\

- From executable location = C:\Program Files\Elastic\Elasticsearch

ES_CONFIG (in order of precedence)

- ConfigDirectoryProcessVariable = C:\ProgramData\Elastic\Elasticsearch\config

- ConfigDirectoryUserVariable =

- ConfigDirectoryMachineVariable = C:\ProgramData\Elastic\Elasticsearch\config

- Fallback to ES_HOME = C:\Program Files\Elastic\Elasticsearch\config

 

-------------

Java

-------------

Java paths

- current = C:\Program Files\Java\jdk1.8.0_144\bin\java.exe

Java Candidates (in order of precedence)

- JavaHomeProcessVariable =

- JavaHomeUserVariable =

- JavaHomeMachineVariable =

- JdkRegistry64 = C:\Program Files\Java\jdk1.8.0_144

- JreRegistry64 = C:\Program Files\Java\jre1.8.0_144

- JdkRegistry32 =

- JreRegistry32 = C:\Program Files (x86)\Java\jre1.8.0_111

Java checks

- Using32BitJava = False

- JAVA_HOME as machine and user variable = False

 

再次启动ElasticSearch服务,成功了!不再自动停了。

ElasticSearch无法启动的更多相关文章

  1. 【spring boot】【elasticsearch】spring boot整合elasticsearch,启动报错Caused by: java.lang.IllegalStateException: availableProcessors is already set to [8], rejecting [8

    spring boot整合elasticsearch, 启动报错: Caused by: java.lang.IllegalStateException: availableProcessors ], ...

  2. ElasticSearch本人启动报错总结

    1.报错关键代码如下: Exception in thread "main" 2019-04-28 03:53:04,339 main ERROR No log4j2 config ...

  3. elasticsearch开机启动脚本

    最近搭建了一个elasticsearch服务,其中机器重启而ES服务没有重启是问题,就有下面的脚本 #!/bin/sh #chkconfig: #description: es export JAVA ...

  4. ElasticSearch停止启动

    1.查找ES进程 ps -ef | grep elastic 2.杀掉ES进程 kill -9 2382(进程号) 3.重启ES sh elasticsearch -d 注意:elasticsearc ...

  5. Elasticsearch之启动(前台和后台)

    分为两种情况,取决于是否安装了tomat. 一.若安装了tomcat 1.es的前台启动 需要先启动tomcat,再启动es,否则会报错! 所以,得 2.es的后台启动 [hadoop@HadoopM ...

  6. 配置ElasticSearch快捷启动

    在/etc/init.d目录下新建文件elasticsearch #!/bin/sh #chkconfig: 2345 80 05 #description: es #export JAVA_HOME ...

  7. 启动elasticsearch报错

    could not find java; set JAVA_HOME or ensure java is in PATH 首先需要安装java 1.yum list installed |grep j ...

  8. ElasticSearch 在3节点集群的启动

    ElasticSearch的启动分前台和后台启动 先介绍前台启动: 先在master节点上启动 可以看到已经启动了 同时在slave1.slave2节点上也启动 可以看到都已经启动了! 在浏览器分别打 ...

  9. Elasticsearch源码分析 | 单节点的启动和关闭

    本文主要简要介绍Elasticsearch单节点的启动和关闭流程.Elasticsearch版本:6.3.2 相关文章 1.Google Guice 快速入门 2.Elasticsearch 中的 G ...

随机推荐

  1. 提高你的Java代码质量吧:谨慎包装类型的比较

    一.分析  基本类型可以比较大小,其所对应的包装类型都实现了Comparable接口此问题. 二.场景  代码如下: public class Client{ public static void m ...

  2. linux下授予某用户对某文件夹的读写权限

  3. vue首屏加载优化

    库使用情况 vue vue-router axios muse-ui material-icons vue-baidu-map 未优化前 首先我们在正常情况下build 优化 1. 按需加载 当前流行 ...

  4. MySQL查询报错 ERROR: No query specified

    今天1网友,查询报错ERROR: No query specified,随后它发来截图. root case:查询语法错误 \G后面不能再加分号;,由于\G在功能上等同于;,假设加了分号,那么就是;; ...

  5. 【docker】【Gitlab】gitlab中clone项目时,IP地址是一串数字(内网Gitlab的IP地址不正确)的问题解决

    首次在内网搭建Gitlab环境,在成功后在Gitlab上新建了一个项目. 然而在IDEA上clone项目时发现,项目地址如下: git@0096ce63c43f:root/jump.git 或者这样 ...

  6. android加密DESede/CBC/PKCS5Padding

    from://http://my.oschina.net/u/269082/blog/56163 工作中需要和HPH对接,接口一些敏感信息,讨论后用3DES加密,由于我做的android邮件客户端是依 ...

  7. SpringMVC方法传递集合数组

    背景:实体集合作为参数   数据准备: 1.实体类 class A {private int id; private String name; } 2.集合json字符串 [{"id&quo ...

  8. RDIFramework.NET V2.7 Web版本号升手风琴+树型文件夹(2级+)方法

    级+)"界面风格,以展示多级功能菜单,满足用户的要求.Web展示效果例如以下: 要以"手风琴+树型文件夹(2级+)"的风格来展示功能模块,我们须要在"系统配置& ...

  9. IOS Devices Version

    游戏项目中有一个专门用于收集IOS崩溃的接口和查询页,运营/测试的同事有时候会通过查询页大概看一下每日崩溃的情况,经常会问iPhone6,1是什么,iPhone7,1又是什么设备?   我从网上仔细搜 ...

  10. 用ArrayAdapter来创建Spinner(自定义布局、默认布局、动态内容、静态内容)

             android:dropDownWidth 下拉列表宽度 android:dropDownHorizontalOffset 下拉列表距离左边的距离 android:dropDownV ...