Сделать толстую банку из проекта с самой толстой банкой, используя сборку sbt

Я использую sbt-assembly, чтобы превратить мой проект scala в толстую банку.

В этом проекте используется play-json и AWS SDK.

В то же время он также использует DynamoDB Transaction Lib в качестве толстой банки, которая использует Jackson и < strong>AWS SDK другой версии.

Когда я использовал сборку sbt для создания jar, возникла ошибка из-за одного и того же пути библиотек между jackson, joda-date и другими зависимостями, общими для AWS SDK, которые я использовал, и тех, которые используются DynamoDB Transaction Lib.

Из-за собственной проблемы DynamoDB Transaction Lib я должен использовать эти две версии как jackson, так и AWS SDK.

Есть ли способ решить эту проблему с помощью стратегии слияния?

СПАСИБО заранее!


person Chris Kong    schedule 28.07.2014    source источник


Ответы (1)


Толстая банка предназначена только для развертывания. Использование его в качестве библиотеки - действительно плохая идея.

Из-за собственной проблемы DynamoDB Transaction Lib я должен использовать эти две версии как jackson, так и AWS SDK.

Вы говорите, что вам нужно использовать две разные версии Джексона одновременно? Я не думаю, что sbt-assembly может вам в этом помочь. Стратегия слияния может выбрать один из них.

person Eugene Yokota    schedule 29.07.2014
comment
Вы правы, использовать толстую банку в качестве библиотеки — плохая идея. Наконец-то я нашел способ использовать версию AWS и Jackson, которую использует библиотека транзакций DynamoDB. Однако это была большая работа. В любом случае, спасибо! - person Chris Kong; 31.07.2014