2

当我尝试使用基于 Hazelcast 的 JCache 实现(即 JSR 107)时,我收到了一个奇怪的警告,如下所示(原始示例代码):

// Explicitly retrieve the Hazelcast backed javax.cache.spi.CachingProvider
CachingProvider cachingProvider = Caching.getCachingProvider(name);
// Retrieve the javax.cache.CacheManager
CacheManager cacheManager = cachingProvider.getCacheManager("com.hazelcast.cache.impl.HazelcastCachingProvider");

这是记录的消息:

oct. 30, 2014 5:17:59 PM com.hazelcast.cache.impl.HazelcastCachingProvider
WARNING: Could not load client CachingProvider! Fallback to server one... java.lang.ClassNotFoundException: com.hazelcast.client.cache.impl.HazelcastClientCachingProvider

为什么它试图加载HazelcastClientCachingProvider我会要求com.hazelcast.cache.impl.HazelcastCachingProvider。我是否使用了错误的 JCache 提供程序?

4

1 回答 1

3

HazelcastCachingProvider 只是一个自动选择基于客户端或基于服务器的 CachingProvider 的委托。

对于最近的 3.4 SNAPSHOTS,HazelcastCachingProvider 也被移到com.hazelcast.cache.HazelcastCachingProvider. 有关新文档,请参阅刚刚起草的 3.4 文档版本:https ://github.com/hazelcast/hazelcast/blob/master/hazelcast-documentation/src/JCache.md

你会看到它变得更长了:)

于 2014-10-30T17:16:45.950 回答