【Nacos】源码以及启动环境搭建

1  前言

Nacos 现在越来越成为微服务结构中不可或缺的一部分,他的集成服务以及配置的管理一体化、简单方便也是我们手首选的原因,那么了解他的原理就很重要。所以我们这节拉取下源码调试下环境,方便我们观察服务注册的整体过程,以及配置下发等核心逻辑的过程,有助于更好的理解和排查故障。

相关链接:Nacos 官网Nacos 源码protoc 安装压缩包

前置条件:有 jdk 、maven、mysql、protoc(这玩意要有)

2  环境准备

2.1  源码下载

按照上边的链接地址,拉取下源码,我的分支是在 develop,因为我们项目用的是 2.1.1 版本的 nacos 所以我在 develop 分支然后回退到 2.1.1 的代码记录那里:

2.2  启动报错问题处理

拉完我们直接启动的话,会直接报错,我也是搜了搜慢慢的一个个问题解决了,最后启动起来了,所以我这里把我启动过程中,遇到的问题以及解决办法贴出来。

启动的入口是在:

2.2.1  entity 包不存在

首先我启动的第一个报错就是类找不到或者包找不到,entity xxx 什么的,也是最麻烦的一个报错:

这个是因为依赖的这些类是由 protoc 生成出来的,所以我们本地要有 protoc ,关于 protoc 的安装可以参考:protoc 安装参考,写的还是比较细的,大致的执行步骤就是:

(1)idea 先安装 genprotobuf 插件

(2)然后本地下载 protoc 的压缩包,然后按照步骤安装到本地

(3)最后配置 idea 里的插件配置 tools–>configure genprotobuf

即可,这是我的配置,大家可以参考:

这三个步骤走完,然后按下图操作:

这个执行很快,执行完就会看到这些类已经出来了:

好了,这个类找不到的问题按照如上进行解决即可。

2.2.2  istio 包找不到

类似如下这个报错:

这个我是执行这里的编译整个项目好的,这个时间很长,要耐心等一会儿:

2.2.3  改为本地 Mysql

首先 mysql 的数据库脚本是在:

执行完脚本后,修改数据源配置,在这里:

修改完启动即可。

2.3  启动验证

启动后的效果如下:

页面效果:

然后我们新增一个用户,看看对应的数据库中是不是会多一条数据,保证我们的数据是落在本地数据库中的:

新增完,查看数据库确实多了一个用户:

3  小结

好啦,至此 nacos 的源码环境基本就到这里结束了,后面我们就可以尝试注册服务、消费服务、修改配置等来 debug 跟踪核心逻辑啦。

posted @   酷酷-  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2024-03-01 【Mybatis】【二】源码分析-Mapper 接口都是怎么注入到 Spring容器中的?
2023-03-01 【Mybatis】【数据源】【二】Mybatis源码解析-连接池管理
2023-03-01 【Mybatis】【数据源】【一】Mybatis源码解析-内置数据源
2023-03-01 【Mybatis】【配置文件解析】【五】Mybatis源码解析-总结
点击右上角即可分享
微信分享提示