1、官网下载nacos,可参考链接:
https://nacos.io/zh-cn/docs/quick-start.html
安装完成后,可登录nacos页面,用户名密码默认是root ,root
2、删除原eurake依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
3、添加nacos依赖
<!--nacos相关组件-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${nacos.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${nacos.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
更换依赖后,更新maven,clean——install后可能会出现StringUtils,ArrayUtils等引不到,需要重新引入(在启动的时候会报错的)。
4、在启动类上删除eurake注解
@EnableEurekaClient
5、在启动类上添加nacos注解
@EnableDiscoveryClient
@EnableFeignClients
6、更改配置文件
建议备份原有的application.yml,新建bootstrap.yml(user.name不能是中文,否则报错)
server:
port: 9212
servlet:
encoding:
force: true
enabled: true
charset: UTF-8
spring:
application:
name: operation-ms-business-collection
cloud:
nacos:
discovery:
server-addr: ${NACOS-HOST:安装ip}:${NACOS-PORT:安装port}
namespace: ${NACOS_NS:public}
group: ${NACOS_GROUP:${user.name:DEFAULT_GROUP}}
# user.name不能是中文,否则报错
config:
server-addr: ${NACOS-HOST:安装ip}:${NACOS-PORT:安装port}
namespace: ${NACOS_NS:public}
file-extension: yaml
7、在nacos界面——点击+——在Data-ID输入bootstrap.yml中的name——选择YAML——在配置内容中添加application.yml中的配置信息(不要跟bootstrap.yml中的配置信息重复)——发布后即可启动项目,并在nacos界面的服务列表中看到自己起的服务
8、我在替换过程中遇到的问题
a. pom文件中引用的父类有eurake相关依赖,需要清除
b. 更换依赖后,项目启动会找不到一些类,需要重新引入
c. 用户名是中文,无法启动,注释掉即可
d. 在配置文件中最好加上如下配置,限制日志级别
logging:
level:
com.alibaba.nacos.client.*: WARN
root: info
com.clamc.collection.mapper: debug