由于序列化程序覆盖,Hazelcast 实例在启动时失败
Hazelcast Instance failing on startup due to Serializer overwrite
我正在 运行ning hazelcast 3.6.3,当我 运行 以下内容时没有配置:
Hazelcast.newHazelcastInstance();
我得到如下异常:
java.lang.IllegalArgumentException: [class java.util.LinkedList] serializer cannot be overridden!
at com.hazelcast.internal.serialization.impl.AbstractSerializationService.safeRegister(AbstractSerializationService.java:331)
at com.hazelcast.internal.serialization.impl.AbstractSerializationService.safeRegister(AbstractSerializationService.java:326)
at com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder.registerSerializerHooks(DefaultSerializationServiceBuilder.java:294)
at com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder.build(DefaultSerializationServiceBuilder.java:220)
at com.hazelcast.instance.DefaultNodeExtension.createSerializationService(DefaultNodeExtension.java:125)
at com.hazelcast.instance.Node.<init>(Node.java:174)
at com.hazelcast.instance.HazelcastInstanceImpl.<init>(HazelcastInstanceImpl.java:125)
at com.hazelcast.instance.HazelcastInstanceFactory.constructHazelcastInstance(HazelcastInstanceFactory.java:160)
at com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance(HazelcastInstanceFactory.java:143)
at com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance(HazelcastInstanceFactory.java:111)
at com.hazelcast.core.Hazelcast.newHazelcastInstance(Hazelcast.java:87)
...
我没有注册任何序列化程序,当我降级到 3.5.3 时,同样的代码也能正常工作。我需要做些什么来更改配置吗?
noctarius 是正确的。这是由 Spring 引导打包 jar 中的 hazelcast.jar 文件的两个版本引起的。
我正在 运行ning hazelcast 3.6.3,当我 运行 以下内容时没有配置:
Hazelcast.newHazelcastInstance();
我得到如下异常:
java.lang.IllegalArgumentException: [class java.util.LinkedList] serializer cannot be overridden!
at com.hazelcast.internal.serialization.impl.AbstractSerializationService.safeRegister(AbstractSerializationService.java:331)
at com.hazelcast.internal.serialization.impl.AbstractSerializationService.safeRegister(AbstractSerializationService.java:326)
at com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder.registerSerializerHooks(DefaultSerializationServiceBuilder.java:294)
at com.hazelcast.internal.serialization.impl.DefaultSerializationServiceBuilder.build(DefaultSerializationServiceBuilder.java:220)
at com.hazelcast.instance.DefaultNodeExtension.createSerializationService(DefaultNodeExtension.java:125)
at com.hazelcast.instance.Node.<init>(Node.java:174)
at com.hazelcast.instance.HazelcastInstanceImpl.<init>(HazelcastInstanceImpl.java:125)
at com.hazelcast.instance.HazelcastInstanceFactory.constructHazelcastInstance(HazelcastInstanceFactory.java:160)
at com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance(HazelcastInstanceFactory.java:143)
at com.hazelcast.instance.HazelcastInstanceFactory.newHazelcastInstance(HazelcastInstanceFactory.java:111)
at com.hazelcast.core.Hazelcast.newHazelcastInstance(Hazelcast.java:87)
...
我没有注册任何序列化程序,当我降级到 3.5.3 时,同样的代码也能正常工作。我需要做些什么来更改配置吗?
noctarius 是正确的。这是由 Spring 引导打包 jar 中的 hazelcast.jar 文件的两个版本引起的。