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

使用java api在Elasticsearch中创建索引和添加映射会导致缺少分析器错误

使用java api在Elasticsearch中创建索引和添加映射会导致缺少分析器错误,java,scala,elasticsearch,Java,Scala,elasticsearch,代码是用Scala编写的。它与Java代码极为相似 地图索引器用于创建索引的代码: 上述代码用于创建索引和映射的实用程序: java提供的错误: 运行代码并获取错误后的响应: JSON文件: 附件是我正在加载的json文件。我已经确认它正在加载正确的json文件,并将其作为字符串正确输出到.loadFromSource和.setSource中 你知道为什么即使分析仪处于\u设置中也找不到吗?如果我通过curl运行这些json文件,它们可以正常工作并正确设置映射。我用来创建索引的代码如下所示:在

代码是用Scala编写的。它与Java代码极为相似

地图索引器用于创建索引的代码:

上述代码用于创建索引和映射的实用程序:

java提供的错误:

运行代码并获取错误后的响应:

JSON文件:

附件是我正在加载的json文件。我已经确认它正在加载正确的json文件,并将其作为字符串正确输出到.loadFromSource和.setSource中


你知道为什么即使分析仪处于\u设置中也找不到吗?如果我通过curl运行这些json文件,它们可以正常工作并正确设置映射。

我用来创建索引的代码如下所示:在索引中创建设置:

index.settings.analysis.filter.my_snow.type:词干分析器

它在设置路径中有设置

我将索引代码更改为以下内容以修复此问题:

def createIndex(client: Client, indexName: String, indexFile: String) {
  //Create index
    client.admin().indices().prepareCreate(indexName)
    .setSource(Utils.loadFileAsString(indexFile))
    .execute()
    .actionGet()
}

我用来创建索引的代码如下:在索引中创建设置:

index.settings.analysis.filter.my_snow.type:词干分析器

它在设置路径中有设置

我将索引代码更改为以下内容以修复此问题:

def createIndex(client: Client, indexName: String, indexFile: String) {
  //Create index
    client.admin().indices().prepareCreate(indexName)
    .setSource(Utils.loadFileAsString(indexFile))
    .execute()
    .actionGet()
}