gpt4 book ai didi

java - 如何设置 EmbeddedSolrServer 实例?

转载 作者:搜寻专家 更新时间:2023-11-01 00:52:48 24 4
gpt4 key购买 nike

我在运行 EmbeddedSolrServer 时遇到问题。 CoreContainer 的 JavaDoc 至少可以说是稀疏的。我查看了“MergeIndexesEmbeddedTest”,我的代码似乎应该可以工作。 (这是一个 Maven 项目)我在 src/main/resources 文件夹的根目录中有“Schema.xml”和“solr.xml”。我可以实例化服务器,但是当我尝试将 SolrInputDocument 添加到服务器时,我得到:

org.apache.solr.common.SolrException: 'No such core: butterfly'
at org.apache.solr.client.solrj.embedded.EmbeddedSolrServer.request(EmbeddedSolrServer.java:104)
at org.apache.solr.client.solrj.request.AbstractUpdateRequest.process(AbstractUpdateRequest.java:105)
at org.apache.solr.client.solrj.SolrServer.add(SolrServer.java:64)

我设置服务器的代码是:

final File solrConfigXml = new File( "C:/code/butterfly/src/main/resources/solr.xml" );
final String solrHome = "C:/code/butterfly/src/main/resources/";
CoreContainer coreContainer;
try{
coreContainer = new CoreContainer( solrHome, solrConfigXml );
}catch( Exception e ){
e.printStackTrace( System.err );
throw new RuntimeException( e );
}
solrServer = new EmbeddedSolrServer( coreContainer, "butterfly" );

我的solr.xml 文件是:

<?xml version="1.0" encoding="UTF-8" ?>
<solr persistent="false">
<cores adminPath="/admin/cores" defaultCoreName="butterfly1">
<core name="butterfly" instanceDir="." />
</cores>
</solr>

我没有发布我的 Schema.xml 文件,因为它只是具有不同字段名称的示例文件的精简版本。我使用绝对文件路径只是因为它似乎更容易上手。

最佳答案

在您的 solr.xml 片段中,默认核心名称是 butterfly1。您的架构中没有名称为 =butterfly1 的核心。

您使用的是什么版本的 solr 服务器?

关于java - 如何设置 EmbeddedSolrServer 实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6221085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com