Guice injector.getInstance 抛出配置异常
Guice injector.getInstance throwing Configuration exception
我正在使用提供程序创建 Predicate 实例。
@Provides
@Singleton
@Named("RecordFilters")
public Predicate<ImmutablePair<AbstractRecord, StreamRecord>> getAllFilters() {
BackfillDataFilter backfillDataFilter = new BackfillDataFilter();
DummyUpdateFilter dummyUpdateFilter = new DummyUpdateFilter();
return input -> dummyUpdateFilter.test(input) && backfillDataFilter.test(input);
}
当我尝试使用 injector.getInstance(Predicate.class)
或 injector.getInstance(Key.get(Predicate.class, Names.Named("RecordFilters"))
获取其实例时
我遇到异常。
com.google.inject.ConfigurationException: Guice configuration errors:
No implementation for java.util.function.Predicate was bound.
while locating java.util.function.Predicate
请推荐。
按照此 answer 中的描述进行尝试:
injector.getInstance(Key.get(new TypeLiteral<Predicate<ImmutablePair<AbstractRecord, StreamRecord>>>(){})
我正在使用提供程序创建 Predicate 实例。
@Provides
@Singleton
@Named("RecordFilters")
public Predicate<ImmutablePair<AbstractRecord, StreamRecord>> getAllFilters() {
BackfillDataFilter backfillDataFilter = new BackfillDataFilter();
DummyUpdateFilter dummyUpdateFilter = new DummyUpdateFilter();
return input -> dummyUpdateFilter.test(input) && backfillDataFilter.test(input);
}
当我尝试使用 injector.getInstance(Predicate.class)
或 injector.getInstance(Key.get(Predicate.class, Names.Named("RecordFilters"))
我遇到异常。
com.google.inject.ConfigurationException: Guice configuration errors:
No implementation for java.util.function.Predicate was bound.
while locating java.util.function.Predicate
请推荐。
按照此 answer 中的描述进行尝试:
injector.getInstance(Key.get(new TypeLiteral<Predicate<ImmutablePair<AbstractRecord, StreamRecord>>>(){})