2011-02-03 91 views
4

在我的服务中,我有一个受保护的构造函数@Inject和其中一个参数(提供程序)@Nullable。任何想法,为什么我越来越Guice @Nullable annotation

com.google.inject.CreationException: Guice creation errors: 
1) No implementation for [[service]] was bound.

? Guice是3.0pre1,@Nullable是我们的。

+0

@Nullable不以任何方式强制执行,它是给读者或代码分析工具的一个提示。请参阅http://stackoverflow.com/questions/14076296/nullable-annotation-usage – 2015-06-08 16:33:05

回答

7

@Nullable是不一样的@Inject(optional=true) ......我想如果要注入null,你需要bind(Service.class).toProvider(Providers.<Service>of(null))或以其他方式有某种提供商的约束,且可能会返回null