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>>>(){})