无法使用Caffeine创建简单缓存

L. *_*anc 2 java caching caffeine

我正在尝试使用Caffeine创建一个简单(非加载)缓存.

Cache<String, MyObject> countsCache =   
    CacheBuilder.newBuilder().build();
Run Code Online (Sandbox Code Playgroud)

无法编译,报告错误:

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>
Run Code Online (Sandbox Code Playgroud)

任何建议将不胜感激.

Ben*_*nes 7

您似乎导入了ElasticSearch的Cache接口以分配缓存构建器的结果.您展示的构建器语法是Guava的CacheBuilder.因为许多用户会使用Guava并且可能会迁移,所以调用构建器Caffeine以减少混淆.

你应该能够构建一个缓存,如,

Cache<String, MyObject> countsCache = Caffeine.newBuilder().build();
Run Code Online (Sandbox Code Playgroud)