Nacos源码下载与运行

早先在linux环境下搭建过nacos环境 即Centos安装部署nacos实战,本次是从官网上下载源码,本地运行看看,记录过程,方便备查。

第一步、Nacos源码下载

推荐到nacos官网下载 Github地址,本次选择最新版,1.4.7版本,可下载 Source code 源码,解压即可,如下图所示。

解压后的目标结构如下所示,关注 config 和 console 两个文件夹。

第二步、编译项目

源码是maven项目,可先编译后运行,在解压目录下 直接 cmd 进入黑窗口编辑页面,执行以下编译命令。

powershell 复制代码
mvn clean package -Dmaven.test.skip=test -Dcheckstyle.skip=true

Dmaven.test.skip=test 不执行测试用例,不编译测试用例类

Checkstyle 是一种检查 Java 源代码是否遵守代码标准或验证规则集的工具。
Dcheckstyle.skip=true 即跳过检查

编译成功如下图所示。

为方便运行和调试,可将项目导入到IDEA编译器中,目录结果如下图所示。

第三步、建立数据库连接

为保证nacos正常启动,其用到的事MySQL数据库,可新建名为 nacos的数据库,修改 console下application.properties中数据库连接,修改为本地连接,如下图所示。

注意:要把数据库类型和数据库数量 两个配置放开,新建的配置才能正确入库。

spring.datasource.platform=mysql

db.num=1

config 下 ==nacos-db.sql ==数据表到 nacos 数据库执行,文件位置如下图所示。

用IDEA自带的数据库工具,可查看新建成功的表,如下图所示。

第四步、配置单机群启动

打开console 下主程序 Nacos.java文件。

配置启动方式,在 Run Configurations 页面配置启动参数,Application 下新建 nacos,具体配置可参考下图。

==-Dnacos.standalone=true ==表示单集群启动

点击运行,在控制台出现 nacos标识,如下所示,表示Tomcat启动成功。

第五步、启动运行

浏览器访问 http://localhost:8848/nacos/index.html#/login,即可进入登录页面,如下图所示。

默认账户:nacos 默认密码:nacos ,在 数据库users表中存放用户信息。

进入页面如下图所示。

点击右上角 加号,在弹出页面,填写配置信息,点击发布即可。

以上操作保存成功,可在config_info 表中看到保存的信息。

对应在项目目录下有日志log、work等文件夹。

日志his_config_info表 中也有对应的操作的记录。

异常处理
【1】数据库连接失败

报错信息

Error: Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezo
处理方案

时区异常,可把运行的时区 serverTimezone 调整为 Asia/Shanghai

【2】运行class无法选中

问题描述

在 run 运行的configuration 编辑框,Main class 无法选中类。

处理方案

出现此问题,说明代码工程还没有完全导入到编译器。在编辑栏 File -> Project Structure -> 点击左侧树 Project ,在目录中重新选择项目即可,如下图所示。

参考文档

【1】https://blog.csdn.net/weixin_48164819/article/details/130079198

相关推荐
摇滚侠16 分钟前
《Spring Boot 3:高级与架构设计》第 2 章 IOC容器的高级机制 BeanFactoryPostProcessor 个人理解 6
java·spring boot·笔记·后端
程序员阿鹏40 分钟前
简单介绍一下软引用
java·开发语言·jvm·数据结构·后端
SL_staff1 小时前
项目延期时如何用四类角色机制实现责任锚定?一线技术实践拆解
java·低代码·团队管理
wno7041 小时前
Spring Security Session管理
java·后端·spring
吃饱了得干活1 小时前
主键选择:从单机到分布式,一个被低估的性能决策
java·后端
haluhalu.1 小时前
初识 Protobuf:微服务跨语言通信的一份契约
java·c语言·开发语言·c++·python
xcl09251 小时前
宠物商城社交托运购物系统开发实战:从架构设计到完整实现指南
java·spring boot
没差c1 小时前
RetrofitClient写接口、导包、配置、路径
java·spring boot·okhttp
SL_staff2 小时前
MQTT Topic权限越界:JVS-IOT中系统Topic与自定义Topic的权责边界与验证实践
java·物联网·全栈
敲代码的瓦龙2 小时前
Jetpack?DataBinding!!!
android·java·开发语言·mysql·android-studio