Мое приложение использует транспортный клиент Elasticsearch для подключения к кластеру ES 1.7.2
. Согласно documentation, он использует Lucene 4.10.4, поэтому ниже версии зависимостей в моем приложении:Конфликт версий зависимостей Maven: Elasticsearch и Lucene
Elasticsearch : 1.7.2
Lucene : 4.10.4
Теперь я хочу использовать библиотеку на основе Lucene (here) для выполнения в перколяции памяти. Заглядывая в pom.xml
, кажется, что он использует библиотеки Lucene 6.3.0. Таким образом, после добавления этой зависимости, мое приложение не запускается, как Elasticsearch нуждается в Lucene 4.10.4 и Maven переопределяет его с 6.3.0, я попробовал следующие варианты:
- Искал для более ранней версии библиотеки перколяции совместимый с Lucene 4.10.4 - не удался
- Пробовал делать работу elasticsearch с Lucene 6.3.0 - без успеха. Я могу попробовать обновить версию зависимости elasticsearch, но мое приложение не сможет подключиться к кластеру 1.7.2 с новой версией (также я не могу обновить кластер).
Любые другие варианты?
благодарит за ответ. Я попытался исключить зависимости lucene-core', но теперь он выдает «NoSuchMethodError», предположительно потому, что ожидает метод, который отсутствует в '4.10.4'. Что-нибудь еще мы можем сделать, чтобы он работал? –
Ничего, я не могу придумать. Две библиотеки, которые вы хотите использовать вместе, кажутся несовместимыми из-за их сильной зависимости от разных версий lucene. Возможно, свяжитесь с ElasticSearch и спросите, включено ли обновление в их расписание. –
@ DarshanMehta Я думаю, что у вас есть лучшая возможность перебросить luwk в Lucene 4.10.4, чем ElasticSearch в Lucene 6.3.0. Если вам повезло, есть несколько незначительных несовместимостей. – lexicore