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

Java 我可以使用哪个函数代替elasticsearch 2.1中的ImmutableSettings.settingsBuilder()

Java 我可以使用哪个函数代替elasticsearch 2.1中的ImmutableSettings.settingsBuilder(),java,elasticsearch,Java,elasticsearch,弹性搜索项目中的ImmutableSettings类不再存在。我发现该类已被删除 我在ImmutableSetting类中使用函数settingsBuilder(),但现在它被删除了。是否有人建议我使用哪个函数来代替>ImmutableSettings.settingsBuilder() 我使用这个函数如下 ImmutableSettings.settingsBuilder().put(“cluster.name”,properties.getProperty(ELS_cluster_name)

弹性搜索项目中的ImmutableSettings类不再存在。我发现该类已被删除

我在ImmutableSetting类中使用函数settingsBuilder(),但现在它被删除了。是否有人建议我使用哪个函数来代替>ImmutableSettings.settingsBuilder()

我使用这个函数如下

ImmutableSettings.settingsBuilder().put(“cluster.name”,properties.getProperty(ELS_cluster_name)).put(“client.transport.sniff”,true.build()


我最近已从1.7升级到2.1.1,这是我必须做的更改:

    Settings settings = Settings.settingsBuilder().put("cluster.name", "elasticsearch").put("client.transport.sniff", true).build();
    TransportClient client = new TransportClient.Builder().settings(settings).build();
    client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));

我最近已从1.7升级到2.1.1,这是我必须做的更改:

    Settings settings = Settings.settingsBuilder().put("cluster.name", "elasticsearch").put("client.transport.sniff", true).build();
    TransportClient client = new TransportClient.Builder().settings(settings).build();
    client.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));

您的代码很好,但根据您提到的错误,您对Jackson库的依赖关系存在冲突

可能发生的情况是,您依赖于Jackson库的一个版本,而其他依赖项引用同一库的另一个版本。在运行时,加载了错误的JAR(可能是版本低于2.3的旧JAR),因此您看到了错误


你需要弄清楚冲突在哪里。您可以使用
mvn dependency:tree
()执行此操作,以查看冲突的根源。一旦您确定了有故障的库,您就可以在POM中为特定的库查找,以解决该问题。

您的代码很好,但根据您提到的错误,您对Jackson库的依赖性存在冲突

可能发生的情况是,您依赖于Jackson库的一个版本,而其他依赖项引用同一库的另一个版本。在运行时,加载了错误的JAR(可能是版本低于2.3的旧JAR),因此您看到了错误


你需要弄清楚冲突在哪里。您可以使用
mvn dependency:tree
()执行此操作,以查看冲突的根源。一旦查明故障库,您可以在POM中查找特定库以解决问题。

可能的重复项我已经验证过,但无法获得解决方案。该链接中显示了use Settings.Builder()。但是它不起作用,这是我提出的另一个问题。你能建议我用什么来代替ImmutableSettings吗。settingBuildet()方法“它不会工作”是什么意思?你得到了什么错误?Hi@Val谢谢你在我将代码从不可变设置更改为设置类后的响应我得到了以下错误嵌套异常是java.lang.NoSuchFieldError:FAIL_ON_SYMBOL_HASH_OVERFLOW请建议一些解决方案。你有什么版本的java客户端库,你有什么确切版本的ES是否有?可能重复?我已经验证过,但无法获得解决方案。在该链接中显示了use Settings.Builder()。但是它不起作用,这是我提出的另一个问题。你能建议我用什么来代替ImmutableSettings吗。settingBuildet()方法“它不会工作”是什么意思?你得到了什么错误?Hi@Val谢谢你在我将代码从不可变设置更改为设置类后的响应我得到了以下错误嵌套异常是java.lang.NoSuchFieldError:FAIL_ON_SYMBOL_HASH_OVERFLOW请建议一些解决方案。你有什么版本的java客户端库,你有什么确切版本的ES有吗?