Tomcat 我无法在solr上创建文本\u常规\u边缘\u ngram字段

Tomcat 我无法在solr上创建文本\u常规\u边缘\u ngram字段,tomcat,solr,tokenize,Tomcat,Solr,Tokenize,我想在solr上搜索一个字段,在写这篇文章之前我搜索了很多,我的问题是我在schema.xml中添加了fieldType name块,但是当我试图定义一个字段时,solr给了我一些错误,这是我的fieldType代码 <fieldType name="text_general_edge_ngram" class="solr.TextField" positionIncrementGap="100"> <analyzer type="index">

我想在solr上搜索一个字段,在写这篇文章之前我搜索了很多,我的问题是我在schema.xml中添加了fieldType name块,但是当我试图定义一个字段时,solr给了我一些错误,这是我的fieldType代码

<fieldType name="text_general_edge_ngram" class="solr.TextField" positionIncrementGap="100">
        <analyzer type="index">
            <tokenizer class="solr.LowerCaseTokenizerFactory"/>
            <filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15" side="front"/>
        </analyzer>
        <analyzer type="query">
            <tokenizer class="solr.LowerCaseTokenizerFactory"/>
        </analyzer>
    </fieldType>

这些是我试图添加到schema.xml的字段

<field name="name" type="edge_ngram" indexed="true" stored="true"/>
<field name="name" type="edgengram" indexed="true" stored="true"/>
<field name="name" type="ngram" indexed="true" stored="true"/>
<field name="name" type="text_general_edge_ngram" indexed="true" stored="true"/>


我是解决问题的新手,任何帮助都会很好,谢谢。

重新阅读您的问题后,我发现了问题所在。不能有四个字段都同名。如果您确实需要上面定义的所有四个字段,我会将它们更改为以下内容:

 <field name="name1" type="edge_ngram" indexed="true" stored="true"/>
 <field name="name2" type="edgengram" indexed="true" stored="true"/>
 <field name="name3" type="ngram" indexed="true" stored="true"/>
 <field name="name4" type="text_general_edge_ngram" indexed="true" stored="true"/>


架构文件中字段的实际名称必须唯一。

您使用的解决方案是什么?4.0? 3.6?能否将您看到的错误添加到问题中。另外,您是否检查了运行Solr的容器的日志,以查看它们是否提供了任何其他详细信息?我收到错误消息,因为我找不到确切的字段名,所以您知道字段名的名称吗?谢谢:)不,我是说我都试过了:)但是谢谢你的回答:)