我遇到了一个我似乎无法过去的问题。每当我开始Solr的,我得到一个错误:SolrException未知字段类型
org.apache.solr.common.SolrException: Unknown fieldtype 'int_us' specified on field partId
at org.apache.solr.schema.IndexSchema.readSchema(IndexSchema.java:501)
at org.apache.solr.shcema.IndexSchema.<init>(IndexSchema.java:125)
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:461)....
我Schema.xml文件看起来是这样的:
<schema name="parts" version 1.5>
<type>
<fieldType name="text_en_US" class="solr.TextField" sortMissingLast="true">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.LowerCaseFilterFacroty" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_en.txt" enablePositionIncrements="true" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false" />
<filter class="solr.SnowballPorterFilterFactory" language="English" />
<filter class="solr.PhoneticFilterFactory" encoder="DoubleMetaphone" inject="true" />
<filter class="solr.RemoveDuplicatesTokenFilterFactory" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_en.txt" enablePositionIncrements="true" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.SnowballPorterFilterFacroty" language="English" />
</analyzer>
</fieldType>
<fieldType name="string_en_US" class="solr.StrField"></fieldType>
<fieldType name="int_us" class="solr.IntField"></fieldType>
</type>
<fields>
<field name="partId" type="int_us" indexed="false" stored="true" required="true" />
<field name="partNumber" type="String_en_US" indexed="false" stored="true" required="true" />
<field name="desc" type="text_en_US" indexed="true" stored="true" required="true" />
<field name="usage" type="text_en_US" indexed="true" stored="true" required="true" />
<field name="qty" type="String_en_US" indexed="false" stored="true" required="true" />
<field name="make" type="String_en_US" indexed="true" stored="false" required="true" />
<field name="year" type="int_us" indexed="true" stored="false" required="true" />
</fields>
</schema>
我试图改变PARTID的字段类型,但我得到了同样的错误不有什么关系。 我正在使用在tomcat 7服务器上运行的solr 3.5。有谁知道我做错了什么?如果这些信息不够,请让我知道,我会发布更多信息。
如果我们这样做,它会给出错误说:schema.xml:field id:missing强制属性“类型” – 2016-05-18 08:56:59
我的答案是从2012年开始的,所以你显然正在使用更新版本的solr https://wiki.apache.org/solr/SchemaXml – 2016-05-24 20:36:59