#java #guice
#java #guice
Вопрос:
У меня есть фрагмент кода с несколькими модулями из разных библиотек:
install(new AModule())
install(new BModule())
Я получаю сообщение об ошибке:-
Привязка к com.path.to.Class был уже настроен в com.Модуль.Предоставьте класс. в com.BModule…
Мне нужны оба модуля, но их нельзя использовать вместе, потому что оба имеют привязки к определенному классу. Я не владею 2 библиотеками, поэтому не могу вносить в них изменения. Как я могу решить эту проблему?
Ответ №1:
Используйте Modules.override
Если вам требуется наличие привязки AModule
, используйте:
install(Modules.override(new BModule()).with(new AModule()));
С другой стороны, если вам требуется наличие привязки BModule
, используйте:
install(Modules.override(new AModule()).with(new BModule()));