--- title: "字段 - 如何解决此 Elasticsearch 异常" date: 2026-03-11 lastmod: 2026-03-11 description: "当 Elasticsearch 尝试访问索引中不存在的字段或字段未正确映射时,会引发此错误。通过检查索引映射确保字段存在并正确映射来解决问题。" tags: ["字段", "映射", "索引"] summary: "版本: 6.8-6.8 简而言之,当 Elasticsearch 尝试访问索引中不存在的字段或字段未正确映射时,会发生此错误。要解决此问题,您可以检查索引的映射以确保字段存在且映射正确。如果字段不存在,您可能需要将其添加到索引中。如果字段未正确映射,您可能需要使用正确的映射重新索引数据。此外,确保您的查询正确引用了该字段。 日志上下文 # 日志 “Field [” 类名是 AllFieldMapper.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人使用: // 下面的 parseField 会愉快地解析 doc_values 设置;但它随后永远不会传递给 // 构建器中的 AllFieldMapper 构造函数,因为它是无效的。这里我们验证 // 拒绝 doc values 设置(新旧)是否被拒绝 Object docValues = node.get("doc_values"); if (docValues != null && TypeParsers.nodeBooleanValueLenient(name; "doc_values"; docValues)) { throw new MapperParsingException("Field [" + name + "] is always tokenized and cannot have doc values"); } // 指定 doc values 的复杂方式 Object fielddata = node." --- > **版本:** 6.8-6.8 简而言之,当 Elasticsearch 尝试访问索引中不存在的字段或字段未正确映射时,会发生此错误。要解决此问题,您可以检查索引的映射以确保字段存在且映射正确。如果字段不存在,您可能需要将其添加到索引中。如果字段未正确映射,您可能需要使用正确的映射重新索引数据。此外,确保您的查询正确引用了该字段。 日志上下文 ----------- 日志 "Field [" 类名是 [AllFieldMapper.java。](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人使用: ```java // 下面的 parseField 会愉快地解析 doc_values 设置;但它随后永远不会传递给 // 构建器中的 AllFieldMapper 构造函数,因为它是无效的。这里我们验证 // 拒绝 doc values 设置(新旧)是否被拒绝 Object docValues = node.get("doc_values"); if (docValues != null && TypeParsers.nodeBooleanValueLenient(name; "doc_values"; docValues)) { throw new MapperParsingException("Field [" + name + "] is always tokenized and cannot have doc values"); } // 指定 doc values 的复杂方式 Object fielddata = node.get("fielddata"); if (fielddata != null) { ```