組み込みの Solr サーバーを既存の Web アプリケーションにセットアップしたいと考えています。しかし、私はすでにBeanの作成に失敗しています:
[ERROR] /home/danny/workspace/example/src/main/java/com/example/config/MainConfig.java:[76,45] cannot access org.apache.solr.client.solrj.embedded.EmbeddedSolrServer
class file for org.apache.solr.client.solrj.embedded.EmbeddedSolrServer not found
これは私のMaven依存関係です(ここのメモセクションで述べたように、組み込みサーバーバージョンを使用したいと思います):
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-solr</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
そして、これは私の Configuration クラスです (必要な部分):
@Configuration
@ComponentScan(basePackages = "com.example", excludeFilters = { @ComponentScan.Filter(Configuration.class) })
@EnableSolrRepositories
public class MainConfig {
@Bean
public SolrServer solrServer() {
EmbeddedSolrServerFactory factory = new EmbeddedSolrServerFactory("classpath:com/example/solr");
return factory.getSolrServer(); // Eclipse tells: The type org.apache.solr.client.solrj.embedded.EmbeddedSolrServer cannot be resolved. It is indirectly referenced from required .class files
}
@Bean
public SolrOperations solrTemplate() {
return new SolrTemplate(solrServer());
}
}