elasticsearch,Java,Exception,elasticsearch" /> elasticsearch,Java,Exception,elasticsearch" />

elasticsearch无法启动-Java异常无此类方法:Java.nio.file.Files.readAllLines(Ljava/nio/file/Path;)

elasticsearch无法启动-Java异常无此类方法:Java.nio.file.Files.readAllLines(Ljava/nio/file/Path;),java,exception,elasticsearch,Java,Exception,elasticsearch,一直在尝试将elasticsearch从2.x升级到5.x,在这样做的同时,由于无法直接升级,因此需要重新安装。因此,我下载了deb文件并尝试安装新版本。我成功地安装了elasticsearch。当我尝试启动服务器时,出现了以下异常: * Starting Elasticsearch Server Exception in thread "main" java.lang.NoSuchMethodError: java.nio.file.Files.readAllLines(Ljava/

一直在尝试将elasticsearch从2.x升级到5.x,在这样做的同时,由于无法直接升级,因此需要重新安装。因此,我下载了deb文件并尝试安装新版本。我成功地安装了elasticsearch。当我尝试启动服务器时,出现了以下异常:

 * Starting Elasticsearch Server
    Exception in thread "main" java.lang.NoSuchMethodError: java.nio.file.Files.readAllLines(Ljava/nio/file/Path;)Ljava/util/List;
    at org.elasticsearch.env.ESFileStore.<init>(ESFileStore.java:65)
    at org.elasticsearch.env.Environment.<clinit>(Environment.java:111)
    at org.elasticsearch.node.InternalSettingsPreparer.prepareEnvironment(InternalSettingsPreparer.java:90)
    at org.elasticsearch.cli.EnvironmentAwareCommand.createEnv(EnvironmentAwareCommand.java:72)
    at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67)
    at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122)
    at org.elasticsearch.cli.Command.main(Command.java:88)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91)
    at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84)
  [fail]

Java version of my machine is:
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-b108)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b50, mixed mode)
*启动Elasticsearch服务器
线程“main”java.lang.NoSuchMethodError中出现异常:java.nio.file.Files.readAllLines(Ljava/nio/file/Path;)Ljava/util/List;
位于org.elasticsearch.env.ESFileStore(ESFileStore.java:65)
在org.elasticsearch.env.Environment上(Environment.java:111)
位于org.elasticsearch.node.InternalSettingsPreparer.prepareEnvironment(InternalSettingsPreparer.java:90)
位于org.elasticsearch.cli.EnvironmentAwareCommand.createEnv(EnvironmentAwareCommand.java:72)
位于org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:67)
位于org.elasticsearch.cli.Command.main,不带错误处理(Command.java:122)
位于org.elasticsearch.cli.Command.main(Command.java:88)
位于org.elasticsearch.bootstrap.elasticsearch.main(elasticsearch.java:91)
位于org.elasticsearch.bootstrap.elasticsearch.main(elasticsearch.java:84)
[失败]
我的机器的Java版本是:
java版本“1.8.0-ea”
Java(TM)SE运行时环境(构建1.8.0-ea-b108)
Java HotSpot(TM)64位服务器虚拟机(构建25.0-b50,混合模式)
我有一个openjdk-7-jre也在机器上运行。
找不到解决此问题的方法。任何帮助都将不胜感激。

经过三个小时的资源思考,我已经解决了这个问题。ES5.x和openjdk-7-jre之间似乎存在版本兼容性不匹配的问题。我卸载了现有的openjdk-7-jre并安装了openjdk-8-jre,再次重新启动了服务器。Elasticsearch已启动并正在运行:)

您真的确定您的服务器以新版本elasticserch所需的java版本启动吗?试一试,你可以禁用Java7。我没有想到@reporter。然而,我已经通过安装openjdk-8-jre解决了这个问题。