确实,javax.inject注释可以直接替代com.google.inject?因此,如果我将所有当前的guice/gin注释替换为javax.inject中的那些注释,我的应用程序将编译并运行得很好吗?用javax.inject替换com.google.inject
首先,javax.inject覆盖了google.inject覆盖的所有基础吗?
确实,javax.inject注释可以直接替代com.google.inject?因此,如果我将所有当前的guice/gin注释替换为javax.inject中的那些注释,我的应用程序将编译并运行得很好吗?用javax.inject替换com.google.inject
首先,javax.inject覆盖了google.inject覆盖的所有基础吗?
是的,它会正常工作。实际上,Guice(Bob Lee)的作者是javax.inject
规范的spec-lead。
javax.inject.Inject
没有optional
属性,所以如果你想要一个可选的依赖项,你必须使用guice注解。
其实,我选择切换到javax.inject不要,因为我发现了规范相比,有什么吉斯提供了许多简约(我使用):
@Optional
由@Bozho@ImplementedBy
当您希望减少显式绑定的数量(为了代码清晰度)以及您希望能够轻松覆盖缺省绑定(例如,用于集成测试)时,这非常有用。有可能是其他人,但对我来说,这2个已经showstoppers。
@Bozho是一个guice注释吗?开玩笑!!! –
这个问题是相当古老的,但... 供参考:你可以自动check that on apiwave。
通过学习过去的变化,我们看到com.google.inject.Inject
可以被替换为javax.inject.Inject
。
请不要编辑我的guice标签。 –