无法使用 Caffeine 创建简单缓存
Cannot create simple cache with Caffeine
我正在尝试使用 Caffeine 创建一个简单的(非加载)缓存。
Cache<String, MyObject> countsCache =
CacheBuilder.newBuilder().build();
编译失败,报错:
Error:(42, 31) java: incompatible types:
no instance(s) of type variable(s) K1,V1 exist so that org.elasticsearch.common.cache.Cache<K1,V1> conforms to com.github.benmanes.caffeine.cache.Cache<java.lang.String,com.foo.bar.MyObject>
如有任何建议,我们将不胜感激。
您似乎导入了 ElasticSearch 的缓存接口以分配给缓存生成器的结果。您显示的构建器语法是 Guava 的 CacheBuilder
。由于许多用户会使用 Guava 并且可能会迁移,因此将构建器称为 Caffeine
以减少混淆。
你应该能够像这样构造一个缓存,
Cache<String, MyObject> countsCache = Caffeine.newBuilder().build();
我正在尝试使用 Caffeine 创建一个简单的(非加载)缓存。
Cache<String, MyObject> countsCache =
CacheBuilder.newBuilder().build();
编译失败,报错:
Error:(42, 31) java: incompatible types:
no instance(s) of type variable(s) K1,V1 exist so that org.elasticsearch.common.cache.Cache<K1,V1> conforms to com.github.benmanes.caffeine.cache.Cache<java.lang.String,com.foo.bar.MyObject>
如有任何建议,我们将不胜感激。
您似乎导入了 ElasticSearch 的缓存接口以分配给缓存生成器的结果。您显示的构建器语法是 Guava 的 CacheBuilder
。由于许多用户会使用 Guava 并且可能会迁移,因此将构建器称为 Caffeine
以减少混淆。
你应该能够像这样构造一个缓存,
Cache<String, MyObject> countsCache = Caffeine.newBuilder().build();