SolrCloud OpenNLP错误无法在类路径或'/ configs / _default'中找到资源'opennlp / en-sent.bin'

时间:2018-03-27 07:39:43

标签: solr nlp solrcloud opennlp

在云模式下使用带有Solr(版本7.3.0)的Apache OpenNLP时出错。 当我使用open nlp将字段类型添加到 managed-schema 时:

<fieldType name="text_opennlp" class="solr.TextField">
      <analyzer>
        <tokenizer class="solr.OpenNLPTokenizerFactory"
          sentenceModel="opennlp/en-sent.bin"
          tokenizerModel="opennlp/en-token.bin"
        />
      </analyzer>
    </fieldType>

    <field name="content" type="text_opennlp" indexed="true" termOffsets="true" stored="true" termPayloads="true" termPositions="true" docValues="false" termVectors="true" multiValued="true" required="true"/>

我有以下错误:

  

test_collection_shard1_replica_n1:org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:无法加载核心test_collection_shard1_replica_n1的conf:无法加载架构managed-schema:org.apache.solr.core。 SolrResourceNotFoundException:在类路径或'/ configs / _default'中找不到资源'opennlp / en-sent.bin',cwd = D:\ utils \ solr-7.3.0-7 \ solr-7.3.0-7 \ server请查看您的日志以获取更多信息

我从https://builds.apache.org/job/Solr-Artifacts-7.3/lastSuccessfulBuild/artifact/solr/package/

下载了solr var 7.3.0-7

我尝试将模型文件放到:D:\utils\solr-7.3.0-7\solr-7.3.0-7\server但它没有帮助。

此处您是我的相关问题:Can not apply patch LUCENE-2899.patch to SOLR on Windows

也许我需要将模型文件放在其他地方?

1 个答案:

答案 0 :(得分:0)

您需要将这些文件("en-sent.bin"和另一个文件)放入core的conf目录中。

D:\utils\solr-7.3.0-7\solr-7.3.0-7\server\{core_name}\conf

然后直接使用文件。以下应该是xml配置。

<tokenizer class="solr.OpenNLPTokenizerFactory"
          sentenceModel="en-sent.bin"
          tokenizerModel="en-token.bin"
        />