【问题标题】:How to setup Spring Data Solr with EmbeddedSolrServer and multicore support?如何使用 EmbeddedSolrServer 和多核支持设置 Spring Data Solr?
【发布时间】:2014-09-16 12:13:13
【问题描述】:

我正在使用 Spring Data Solr 在我的项目中实现搜索模块。要启用多核支持,我只需实例化一个 HttpSolrServer,然后使用 @EnableSolrRepositores(multicoreSupport=true) 声明一个基于 java 的 Spring 配置类。一切正常,直到我尝试为 Solr 相关代码和模式编写集成测试。

我想使用 EmbeddedSolrServer 进行测试,以便测试可以在不依赖外部 Solr 服务器的情况下运行,但我找不到正确配置的方法。请指教。

【问题讨论】:

    标签: spring-data-solr


    【解决方案1】:

    由于DATASOLR-203,此时不能直接完成。

    一旦上述问题得到解决,您可以按照以下方式进行:

    @Configuration
    @EnableSolrRepositories(multicoreSupport = true)
    static class SolrConfiguration {
    
      @Bean
      SolrServer solrServer() throws FileNotFoundException {
    
        String solrHome = ResourceUtils.getURL("classpath:your/path/here").getPath();
        CoreContainer container = CoreContainer.createAndLoad(solrHome, new File(solrHome + "/solr.xml"));
    
        return new EmbeddedSolrServer(container, null);
      }
    }
    

    【讨论】:

    • 感谢您的信息。 1.2.5 出来后我试试看。
    • @NikhilSahu EmbeddedSolrServer 没有被弃用,我只是用 solr-core-5.4.1 对其进行了测试
    • spring-data-solr 使用 solrj4。明确提及更高版本的 solrj 依赖项将显示 SolrServer 已弃用,现在从 SolrClient 继承。所有功能已移至 SolrClient。
    • SD-Solr 2.0.0.M1 移至 Solr 5。EmbeddedSolrServer 扩展 SolrClient 并可通过 EmbeddedSolrServerFactory 创建
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多