Конфликт в зависимости Джексона от плагина amazonaws и плагина redisson

В настоящее время в моем проекте Grails (версия Grails 2.5.1) я использую плагин amazonaws версии 1.11.339 для передачи данных в поток kinesis. Теперь мне нужно сохранить данные в кэше Redis, и я использую плагин Redisson версии 3.10.1 для сохранения данных в кэше Redis. После использования плагина redisson я не могу передать данные в поток kinesis из-за зависимостей jackson между kinesis и redisson. Я получаю следующие журналы ошибок при отправке данных в поток kinesis.

*

Ошибка | Вызвано: java.lang.RuntimeException: Джексон jackson-core/jackson-dataformat-cbor несовместимая версия библиотеки обнаружено. У вас есть два возможных решения: 1) Убедитесь, что com.fasterxml.jackson.core: jackson-core & com.fasterxml.jackson.dataformat:jackson-dataformat-cbor библиотеки на ваш путь к классам имеет тот же номер версии 2) Отключить CBOR wire-протокол, передав свойство -Dcom.amazonaws.sdk.disableCbor или установка переменной окружения AWS_CBOR_DISABLE (предупреждение, что это может влияют на производительность) Ошибка | в com.amazonaws.protocol.json.SdkCborGenerator.getBytes(SdkCborGenerator.java:68) Ошибка | в com.amazonaws.services.kinesis.model.transform.PutRecordRequestMarshaller.marshall(PutRecordRequestMarshaller.java:80) Ошибка | ... еще 149 Ошибка | Вызвано: java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.cbor.CBORGenerator.getOutputContext()Lcom/fasterxml/jackson/core/json/JsonWriteContext; Ошибка | в com.fasterxml.jackson.dataformat.cbor.CBORGenerator.close(CBORGenerator.java:903) Ошибка | в com.amazonaws.protocol.json.SdkJsonGenerator.close(SdkJsonGenerator.java:253) Ошибка | в com.amazonaws.protocol.json.SdkJsonGenerator.getBytes(SdkJsonGenerator.java:268) Ошибка | в com.amazonaws.protocol.json.SdkCborGenerator.getBytes(SdkCborGenerator.java:66) Ошибка | ... еще 150

Я попытался исключить зависимости Джексона из плагина Redisson. Но тогда он не позволял сохранять данные в кеш Redis. Не могли бы вы предложить совместимые версии для amazonaws и redisson, чтобы они решили проблему и работали должным образом?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
0
538
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если зависимость Джексона от обоих плагинов конфликтует, вы можете попробовать любой из способов.

  1. Вы можете либо исключить зависимость jackson из одного из плагинов (возможно, вы можете исключить ее из недавно добавленных плагинов, т.е. плагина redisson). Попробуйте очистить зависимость и перезапустить проект. Возможно, ваша зависимость не была очищена, и это вызывает проблему при сохранении данных в кеше.

  2. Какую область вы используете для добавления этой зависимости? Если оба они используются как compile. Вы можете попробовать, изменив область действия плагина redisson на время выполнения.

Другие вопросы по теме