Я пишу плагин Eclipse. Этот плагин использует несколько локальных jar-файлов и дополнительно имеет несколько зависимостей от других плагинов.
Я использую API поиска кода Google из jar-файлов, и он отлично работает; но после добавления зависимости плагина org.eclipse.zest.dot.ui
в мой проект API поиска кода Google больше не работает - при вызове new CodeSearchService("my_ID")
я получаю следующую ошибку времени выполнения:
Анализ не выполнен: исключение java.lang.NoSuchMethodError.
com.google.common.collect.ImmutableSet.buider () Lcom / Google / общие / собирать / ImmutableSet $ Builder;
Я тщательно проверил и воспроизвел это: если плагин появляется в списке зависимостей, CodeSearchService
больше не может использоваться; если это не так, это работает отлично. Фактический код проекта не изменяется, добавляется только зависимость.
Это очень странно для меня, поскольку я не понимаю, как добавление зависимости от плагина может внезапно привести к исчезновению некоторых методов. Кто-нибудь сталкивался с чем-либо подобным и может поделиться какой-либо информацией об этой проблеме и возможном решении? Я даже не уверен, является ли эта проблема специфической для этих двух библиотек.