目录

一、解决办法

二、成因(根据自身情况选择解决办法)


在此之前还碰到了SwitchHosts没有写入权限的问题,于是搜索到了这篇文章跟着来就解决了。

文章在这里👉SwitchHosts报错:没有写入 Hosts 文件的权限

一、解决办法

然后我们来解决加载不到来源的问题。

问题就出在了创建服务来源这里。

之前我在创建服务来源的时候填写了Nacos命名空间ID,当不填写的时候我发现Higress就能加载到服务列表了。

二、成因(根据自身情况选择解决办法)

原因就是我们的yml文件配置。大家根据自己的情况判断命名空间该不该写。

我的yml文件是这样的👇:

spring:
  profiles:
    active: dev
  cloud:
    nacos:
      config:
        server-addr: 192.168.0.99:8848
        namespace: fc2e649f-4fab-49c7-a392-e2cc27a4e26d
        file-extension: yaml
        prefix: shopping_category_service

可以看见,我只写了 config 下面的 namespace,没有写discovery(服务注册)和它的 namespacespring.cloud.nacos.config.namespace只管读取配置文件,不管服务注册。

所以我的服务注册到了默认public命名空间,只是配置文件从 dev 命名空间读取的。我创建填写的命名空间ID就是dev的这个ID。

如果yml文件是这样写的,就需要填写命名空间ID才能加载到服务来源👇:

spring:
  cloud:
    nacos:
      config:
        server-addr: 192.168.0.99:8848
        namespace: fc2e649f-4fab-49c7-a392-e2cc27a4e26d
        file-extension: yaml
        prefix: shopping_category_service
      discovery:
        server-addr: 192.168.0.99:8848
        namespace: fc2e649f-4fab-49c7-a392-e2cc27a4e26d  #和config保持一样

总结:config 管配置,discovery 管服务注册,命名空间要分开写,不会互相继承

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐