Мне нужно добавить .jar в качестве неуправляемой зависимости к проекту sbt Scala (это java-stellar-sdk). Все работает хорошо, пока я не запускаю sbt test
. Кажется, в файле .jar есть версия Mockito, которая конфликтует с той, которую я использую в проекте. Я получаю много ошибок, что некоторые сопоставители Mockito не найдены, но все работает нормально без .jar в папке lib.
Есть ли способ сообщить sbt, что он должен игнорировать определенные библиотеки в .jar или что управляемые зависимости имеют приоритет? Я также нашел этот связанный вопрос, но, очевидно, это мне не помогло.
Альтернативный обходной путь также очень поможет. Можно ли изолировать библиотеки в банке таким образом, чтобы я мог просто сделать определенный пакет видимым снаружи?
Обновление: .jar содержит Mockito 2, но в моем проекте используется Mockito 1, так что это очень простой и очевидный конфликт, который я могу решить путем обновления до Mockito 2 (который я пробовал, и он работает). Однако остается вопрос: есть ли другой разумный способ изолировать зависимость Mockito в .jar, чтобы не мешать моему проекту, если я не могу или не хочу разрешить конфликт, купив переход на более новую версию библиотеки обсуждаемый. Может быть, изменить .jar, чтобы переименовать конфликтующие пакеты? Я не знаю. Что-то такое.
Я знаю, что это очень общий вопрос, который, вероятно, подробно обсуждался где-то еще. Тем не менее, я не нашел ничего, что меня действительно удовлетворило бы. Ссылки на соответствующие обсуждения темы, конечно, также приветствуются.
build.sbt
. В противном случае это больше похоже на довольно расплывчатое утверждение о том, что где-то есть какой-то баночный ад. - person Andrey Tyukin   schedule 10.03.2018