所以根据我的测试,如果你有类似的东西:
Module modA = new AbstractModule() {
public void configure() {
bind(A.class).to(AImpl.class);
bind(C.class).to(ACImpl.class);
bind(E.class).to(EImpl.class);
}
}
Module modB = New AbstractModule() {
public void configure() {
bind(A.class).to(C.class);
bind(D.class).to(DImpl.class);
}
}
Guice.createInjector(Modules.overrides(modA, modB)); // gives me binding for A, C, E AND D with A overridden to A->C.
但是如果你想在 modB 中移除 E 的绑定呢?我似乎无法找到一种方法来做到这一点,而不必将 E 的绑定分解为一个单独的模块。有办法吗?