Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用CheckedProvider GUI_Java_Dependency Injection_Guice - Fatal编程技术网

Java 如何使用CheckedProvider GUI

Java 如何使用CheckedProvider GUI,java,dependency-injection,guice,Java,Dependency Injection,Guice,我正在使用Guice进行依赖注入。我想使用@CheckedProviders,因为对象构造可能引发异常,我不希望它被包装在ProvisionException中。我发现这很有用,但我不能完全理解。我创建了一个扩展CheckedProvider接口的接口。现在我想知道这个接口的实现类将包含什么 我的界面看起来像 public interface TokenEncrypterProvider <T> extends CheckedProvider<T> { T get

我正在使用Guice进行依赖注入。我想使用@CheckedProviders,因为对象构造可能引发异常,我不希望它被包装在ProvisionException中。我发现这很有用,但我不能完全理解。我创建了一个扩展CheckedProvider接口的接口。现在我想知道这个接口的实现类将包含什么

我的界面看起来像

public interface TokenEncrypterProvider <T> extends CheckedProvider<T> {
    T get() throws  ExceptionInInitializerError;
}
现在我该写些什么呢

bind(TokenEncrypterProvider.class).toProvider(WHICHCLASS?.class);

或者,如果这不是使用CheckedProviders的方法,请建议一种正确的方法。

我假设您使用的是Guice 3+或4+。如果使用的是
checkedProviders
注释,则不必绑定提供者

您必须在模块的
configure()
方法中添加
install(ThrowingProviderBinder.formModule(this))
,才能使用
@checkedProviders
方法

bind(TokenEncrypterProvider.class).toProvider(WHICHCLASS?.class);