4

独自のトークンおよび文字フィルターを作成するための Solr ドキュメントには、次のように記載されています。

http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#Specifying_an_Analyzer_in_the_schema

カスタム CharFilters、Tokenizers、または TokenFilters を使用する場合は、BaseTokenizerFactory または BaseTokenFilterFactory をサブクラス化する非常に単純なファクトリを次のように作成する必要があります...

public class MyCustomFilterFactory extends BaseTokenFilterFactory {
  public TokenStream create(TokenStream input) {
    return new MyCustomFilter(input);
  }
}

Solr 4 のソース コードのどこにも BaseTokenFilterFactory が見つかりません。

Solr 3.6.1 の org.apache.solr.analysis パッケージは次のとおりです。

http://svn.apache.org/viewvc/lucene/dev/tags/lucene_solr_3_6_1/solr/core/src/java/org/apache/solr/analysis/

そして、これはSolr 4.0.0の同じパッケージです

http://svn.apache.org/viewvc/lucene/dev/tags/lucene_solr_4_0_0/solr/core/src/java/org/apache/solr/analysis/

ドキュメントは Solr 3.6 で動作するように見えますが、4.0 を使用してカスタム フィルターを作成する方法を知る必要があります。

4

1 に答える 1

7

solr 4.0では、BaseTokenFilterFactoryが現在org.apache.lucene.analysis.util.TokenFilterFactoryになっているので、これを確認できます

于 2012-10-31T04:03:17.987 に答える