Java 如何在solrj中创建新核心

Java 如何在solrj中创建新核心,java,spring-boot,solr,solrj,Java,Spring Boot,Solr,Solrj,我正在尝试使用solrj创建新的核心。我需要它为我的应用程序准备测试。我认为这段代码是不完整的或错误的,因为每次我都会遇到一个错误“没有核心候选人” 错误: org.apache.solr.common.SolrException: No such core: candidates 版本: <dependency> <groupId>org.apache.solr</groupId> <artifactId>sol

我正在尝试使用solrj创建新的核心。我需要它为我的应用程序准备测试。我认为这段代码是不完整的或错误的,因为每次我都会遇到一个错误“没有核心候选人”

错误:

org.apache.solr.common.SolrException: No such core: candidates
版本:

<dependency>
        <groupId>org.apache.solr</groupId>
        <artifactId>solr-core</artifactId>
        <version>6.6.1</version>
</dependency>

org.apache.solr
solr核
6.6.1

我遗漏了一些文件和cfg。 正确代码:

 @Bean
public SolrClient solrClient() throws IOException, SolrServerException {
    String folder = "src/main/resources/solr/";
    String coreName = "candidates";
    CoreContainer container = new CoreContainer(folder);
    container.load();
    return new EmbeddedSolrServer(container, coreName);
}

我错过了一些文件和cfg。 正确代码:

 @Bean
public SolrClient solrClient() throws IOException, SolrServerException {
    String folder = "src/main/resources/solr/";
    String coreName = "candidates";
    CoreContainer container = new CoreContainer(folder);
    container.load();
    return new EmbeddedSolrServer(container, coreName);
}

此目录
src/main/resources/solr/
是否包含名为candidate的核心?不包含,因为首先我要创建新核心:-)在上述代码中,您正在加载核心,而不是创建核心。核心需要配置,这在您的情况下是不存在的。如果要在运行时创建核心,请在加载之前先使用
CoreAdminRequest
创建核心。或者,您可以编写自己的自定义代码,创建核心目录,将
conf
目录从基本配置集复制到核心目录,并创建一个包含核心名称的
core.properties
文件。然后运行上面的代码来加载它。您尝试了什么?根据apidoc,被描述为“创建新核心,将核心状态发布到集群”的目录
src/main/resources/solr/
是否包含名为candidate的核心?不包含,因为首先我要创建新核心:-)在上述代码中,您正在加载一个核心,而不是创建一个。核心需要配置,这在您的情况下是不存在的。如果要在运行时创建核心,请在加载之前先使用
CoreAdminRequest
创建核心。或者,您可以编写自己的自定义代码,创建核心目录,将
conf
目录从基本配置集复制到核心目录,并创建一个包含核心名称的
core.properties
文件。然后运行上面的代码来加载它。您尝试了什么?根据apidoc,被描述为“创建一个新的核心,将核心状态发布到集群”,您可以解释这些文件是什么吗。我想在Solr服务器(不是我的本地机器)上用java客户端创建一个新的内核。你能解释一下这些文件是什么吗。我想在Solr服务器(不是我的本地机器)中使用java客户端创建一个新的内核。