我遇到了一個我似乎無法過去的問題。每當我開始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