Как я могу попросить Eclipse всегда отдавать предпочтение самой новой версии библиотеки, которая включена в другие библиотеки? - PullRequest
1 голос
/ 17 мая 2011

Мой проект использует junit-4.8.2.jar и mockito-all-1.8.5.jar; оба включают Hamcrest 1.1. Это работает очень хорошо, пока я не добавил hamcrest-all-1.2.jar; теперь я получаю различные ошибки NoSuchMethodError, потому что, по-видимому, мой код компилируется в Hamcrest 1.2, но работает с Hamcrest 1.1.

Похоже, существуют различные способы решения этой проблемы (например, вместо этого использовать junit-dep-4.8.2 и т. Д.), Но есть ли способ сказать Eclipse, чтобы он предпочел Hamcrest 1.2. во время выполнения, а также во время компиляции?

1 Ответ

2 голосов
/ 17 мая 2011

Это уже упоминалось в комментариях, но я думаю, что это также правильный ответ: используйте Maven для управления зависимостями. Если вы не хотите использовать Maven (потому что вы уже используете Ant или что-то подобное), используйте Ivy, Gradle, Buildr или любой другой инструмент для сборки с управлением зависимостями.

...