我正在使用父级和子级注入器,并且我想确保不会意外地访问父注入器中意图绑定在子注入器中的类。如果父注入器访问类,它可能会自动绑定(并且不正确,因为范围很重要)。我可以禁止在Guice注射吗?
有没有办法强制自动绑定在父注入器失败,或至少报告运行时错误?
举例来说,如果我有一个方法Foo
那就是“非法”请求吧:
class Bar { @Inject Bar() {} } // Shouldn't be accessible in Foo's injector
class Foo { @Inject Foo(Bar bar) {} } // Binding should fail here
'skipSources'是为了简化错误输出。当你有绑定错误时,Guice不会在调用堆栈中报告提供的类。 – 2012-07-19 19:52:13
感谢您的信息...所以它的“全部或全部”(允许一切(默认)或拒绝一切,并明确添加绑定),没有“一切,但...”模式。 – 2012-07-19 20:15:46
是的,除了显然你可以以模块为基础限制模块的这个要求,但它仍然适用于所有类。 – 2012-07-19 20:28:13