hazelcast实例正在运行,但无法连接到mancenter

hazelcast实例正在运行,但无法连接到mancenter,hazelcast,Hazelcast,我创建了两个gradle项目。 首先是一个库项目(hazellib),包装hazelcast功能,并提供用于配置的api,任何项目都可以使用它来运行hazelcast服务 使用此库的第二个项目(projectA)。projectA有以下gradle脚本来添加“hazellib”作为依赖项 **buildscript { dependencies { classpath "com.components:hazellib:0.0.1" }

我创建了两个gradle项目。 首先是一个库项目(hazellib),包装hazelcast功能,并提供用于配置的api,任何项目都可以使用它来运行hazelcast服务

使用此库的第二个项目(projectA)。projectA有以下gradle脚本来添加“hazellib”作为依赖项

**buildscript {
      dependencies {
          classpath "com.components:hazellib:0.0.1"
          }
      }
  dependencies {
      compile   "com.components:hazellib:0.0.1"
  }**
使用此设置ProjectA可以正常运行,但在打开时,它无法找到本地运行的实例

问题是要解决这个问题,我必须包括 编译“com.hazelcast:hazelcast:3.8.2” 除了它已经被引用并作为依赖项包含在hazellib项目中这一事实之外,它还存在依赖项。 如果我在依赖项(*不在buildscript下)中包含此编译,则一切正常,本地运行的hazelcast serivce可以连接到mancenter,或者mancenter可以检测本地运行的实例

有人能帮我理解这里缺少什么吗?如果不包括依赖项,在hazellib项目中编译“com.hazelcast:hazelcast:3.8.2”,gradle脚本对于使用库在本地运行halzelcast的项目就足够了吗?为什么要在projectProjectA中再次添加相同的依赖项

这是黑兹尔卡斯特日志。它清楚地表明实例已经启动,事实上它可以被访问,缓存工作正常,但mancenter无法检测到它。只要我在gradle中添加compile“com.hazelcast:hazelcast:3.8.2”,mancenter也将能够连接到实例

成员[1]{成员[127.0.0.1]:5701-aa25f0ac-da88-432b-87fc-f7247b437c1a }信息c.h.i.m.ManagementCenter服务-[127.0.0.1]:5701[hazelcast_cache][3.7.7]hazelcast将通过以下地址连接到hazelcast管理中心: 信息c.h.internal.jmx.ManagementService-[127.0.0.1]:5701[hazelcast_缓存][3.7.7]启用的hazelcast jmx代理[hz.hazelcastDefaultInstance.MC.State.Sender]信息c.h.i.p.impl.PartitionStateManager-[127.0.0.0.1]:5701[hazelcast_缓存][3.7.7]正在初始化群集分区表安排。。。
INFO com.hazelcast.core.LifecycleService-[127.0.0.1]:5701[hazelcast_cache][3.7.7][127.0.0.1]:5701已启动

,因此答案基于评论线索,如果使用Spring Boot选择与管理中心版本兼容的hazelcast IMDG服务器版本,请设置hazelcast.version。

您能发布显示hazelcast正在做什么的日志吗?Hello Neil,我更新了日志中的问题。这表明hazelcast实例已启动并正在运行,但mancenter无法检测并连接到它。但是,只要我在gradle脚本中添加编译“com.hazelcast:hazelcast:3.8.2”作为依赖项并重新启动应用程序,它就可以正常工作,mancenter将能够检测并连接到实例。可能是版本问题。您正在使用哪个版本的Mancenter?在您的日志中,Hazelcast列出了版本3.7.7,但如果更改依赖项,则会得到版本3.8.2。如果可能的话,您应该将Mancenter升级到3.9,将Hazelcast升级到3.9,如果这是您可以更改的,也可以使用最新版本。我在我的库中将依赖项更新到3.9(Hazelcast),我已经有Mancenter 3.9,但我仍然看到相同的问题。查看日志,它仍然初始化3.7.7,一旦我编译了我的项目,我就会看到3.7.7 jar开始下载并填充到gradle缓存中。不知道为什么它一直下载3.7.7,即使我有3.9作为依赖项。我试图从编译和类路径中排除3.7.7版本,但它仍然下载了3.7.7JAR。我需要更多的调查,但如果你有任何想法,请分享。如果我解决了这个问题,就会相应地更新。顺便说一句,我刚刚验证了hazelcast和mancenter之间的版本不匹配问题。当我将mancenter版本降级为使用3.7.7时,它运行良好,能够连接/检测hazelcast实例(在我提到的例子中,lib将3.9作为依赖项,但3.7.7是如何下载的)。根据结果,我会投票给你们的答案,继续修正我这边的问题,解决依赖不匹配的问题。