2015-04-08 6 views
2

Я пытаюсь подключить существующее приложение Spring к Spring Boot. Я NOT с использованием стартера-стартера-стартера-источника данных Spring, но у меня есть apache solrj (5.0.0) на моем пути к классам.Spring Boot взрывается при использовании solrj, но не spring-boot-starter-data-solr

Во время запуска приложение взрывается. Кажется, что весенняя загрузка видит классы solr и предполагает, что у меня также есть spring-boot-starter-data-solr на пути к классам. В частности, я получаю эту ошибку:

java.lang.IllegalArgumentException: @ConditionalOnMissingBean annotations must specify at least one bean (type, name or annotation)

Если я бросаю зависимость solrj и использовать пружинные загрузки пускателя данных Solr вместо это нормально. Однако мне не нужна интеграция с spring-data-solr, и это заставит меня заархивировать наше приложение на выпуск 4.7.x solr.

Кому-нибудь известно об обходном пути для этого?

ответ

5

Так что, кажется, проблема была вызвана зависимостью рессора ботинка на solrj 4.7.x в то время как я использую 5.0.0

Я установил его с помощью

@SpringBootApplication(exclude = {SolrAutoConfiguration.class}) 

Рассказывать загрузки игнорировать SolrAutoConfiguration полностью.

+0

Основная причина в том, что 5.0 не является заменой на 4.7, поскольку включает некоторые нарушения API-интерфейса. Я полагаю, что Spring Boot будет поддерживать Solr 5.0, когда Spring Data Solr переместится в 5.0. Тем временем я открыл [проблему] (https://github.com/spring-projects/spring-boot/issues/2795), чтобы улучшить диагностику. –