Nacos源码启动

news/2024/5/21 1:02:43/文章来源:https://blog.csdn.net/feng_zi0yhv/article/details/129188577

一、下载源码

为保证速度,国内推荐使用gitee:https://gitee.com/mirrors/Nacos.git

 二、导入IDE中

参考之前文章配置国内Maven私服,快速更新工程。

 三、启动过程,各种问题

找到启动入口:

先直接启动测试下:

 

Caused by: java.net.UnknownHostException: jmenv.tbsite.netat java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:567)at java.base/java.net.Socket.connect(Socket.java:633)at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:178)at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:531)at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:636)at java.base/sun.net.www.http.HttpClient.<init>(HttpClient.java:279)at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:384)at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:406)at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1309)at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1242)at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1128)at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1057)at com.alibaba.nacos.common.http.client.request.JdkHttpClientRequest.execute(JdkHttpClientRequest.java:114)at com.alibaba.nacos.common.http.client.NacosRestTemplate.execute(NacosRestTemplate.java:482)at com.alibaba.nacos.common.http.client.NacosRestTemplate.get(NacosRestTemplate.java:72)at com.alibaba.nacos.core.cluster.lookup.AddressServerMemberLookup.syncFromAddressUrl(AddressServerMemberLookup.java:175)at com.alibaba.nacos.core.cluster.lookup.AddressServerMemberLookup.run(AddressServerMemberLookup.java:143)

报错:解析不了这个域名jmenv.tbsite.net。AddressServerMemberLookup这些关键类看着是以集群形式启动了。先配置成单机启动:

-Dnacos.standalone=true

在以下位置配置:

注意是nacos. 我看到其他文档此处介绍有错误。

 接下来打开application.properties中DB配置:

 执行初始化sql脚本:

 初始化后的表如下:

 给配置中心的表比较多。

启动报错如下:

Caused by: java.lang.IllegalArgumentException: The specified key byte array is 0 bits which is not secure enough for any JWT HMAC-SHA algorithm.  The JWT JWA Specification (RFC 7518, Section 3.2) states that keys used with HMAC-SHA algorithms MUST have a size >= 256 bits (the key size must be greater than or equal to the hash output size).  See https://tools.ietf.org/html/rfc7518#section-3.2 for more information.at com.alibaba.nacos.plugin.auth.impl.jwt.NacosJwtParser.<init>(NacosJwtParser.java:56)at com.alibaba.nacos.plugin.auth.impl.token.impl.JwtTokenManager.processProperties(JwtTokenManager.java:71)... 111 common frames omitted

跟到代码里面发现有个key设置:

 属性是:public static final String TOKEN_SECRET_KEY = "nacos.core.auth.plugin.nacos.token.secret.key";

在application.properties中找到这个配置项,默认是""。设置一个大于256bit的值试试。

 此时再运行,报一个类找不到了,全是com.alibaba.nacos.consistency包下面的类,看了下源码里面确实没有?懵不懵!!

原因是com.alibaba.nacos.consistency.entity下面类是由protobuf在编译时自动生成。在eclipse下执行如下动作即可:

 还有另外个项目也需要执行Maven generate,nacos-istio。但再次不信,执行过程中报找不到nacos其他模块的依赖。一种解决办法是先注释掉,再执行生成,执行完后取消注释,成功了!

最后再次运行启动:

2023-02-23 20:49:21.827 INFO 8284 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8848 (http) with context path '/nacos'

2023-02-23 20:49:21.848 INFO 8284 --- [ main] c.a.n.c.l.StartingApplicationListener : Nacos started successfully in stand alone mode. use embedded storage

2023-02-23 20:49:47.535 INFO 8284 --- [nio-8848-exec-5] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'

2023-02-23 20:49:47.538 INFO 8284 --- [nio-8848-exec-5] o.s.web.servlet.DispatcherServlet : Completed initialization in 2 ms

访问http://127.0.0.1:8848/nacos/

成功进入控制台。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_73389.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oscp渗透测试认证该从哪里学起

当我决定要考OSCP时就马上打开浏览器&#xff0c;试图一下弄清楚课程内容和通过考试的方法&#xff0c;我不断的将指南和资源添加到书签中。渐渐的书签里存了许多资料&#xff0c;以至于我不知道从哪里开始学&#xff0c;学习命令吗&#xff1f;我学习编码吗&#xff1f;我使用…

北京/东莞/广州/深圳2023年上半年软考(中/高级)报名>>>

软考是全国计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试&#xff08;简称软考&#xff09;项目&#xff0c;是由国家人力资源和社会保障部、工业和信息化部共同组织的国家级考试&#xff0c;既属于国家职业资格考试&#xff0c;又是职称资格考试。 系统集成…

扩展学习之时间戳趣谈

目录 一、介绍 二、转换工具 三、获取Unix时间戳的指令 四、普通时间转Unix时间戳 五、扩展 一、介绍 时间戳&#xff1a;一份数据在特定时间点存在的可验证的数据。 Unix时间戳&#xff08;英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp&#xff09;&…

valgrind 移植到arm64 平台上总结

valgrind 介绍valgrind是查找内存泄漏的神器&#xff0c;你可以自动的检测许多内存管理和线程的bug&#xff0c;避免花费太多的时间在bug寻找上&#xff0c;使得你的程序更加稳固。 下载地址&#xff1a;https://valgrind.org/downloads/ 本人下载的是valgrind-3.19.0valgrind编…

.Net与程序集

一个简单的C#程序回想一下我们第一个.net 程序 hello world&#xff0c;它具有那些步骤呢&#xff1f;打开visual studio创建一个C# console的项目build运行程序这时候就有一个命令行窗口弹出来&#xff0c;上面打印着hello world。我们打开文件夹的bin目录&#xff0c;会发现里…

百度前端一面高频react面试题指南

React 高阶组件、Render props、hooks 有什么区别&#xff0c;为什么要不断迭代 这三者是目前react解决代码复用的主要方式&#xff1a; 高阶组件&#xff08;HOC&#xff09;是 React 中用于复用组件逻辑的一种高级技巧。HOC 自身不是 React API 的一部分&#xff0c;它是一…

(考研湖科大教书匠计算机网络)第六章应用层-第七节:万维网WWW

获取pdf&#xff1a;密码7281专栏目录首页&#xff1a;【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一&#xff1a;万维网概述二&#xff1a;万维网应用&#xff08;1&#xff09;URI和URLA&#xff1a;URI和URL关系B&#xff1a;URL格式&#xff08;2&#xff09…

selenium自动化测试用例需要关注的几点

自动化测试设计简介注&#xff1a;参看文章地址 我们在本章提供的信息&#xff0c;对自动化测试领域的新人和经验丰富的老手都是有用的。本篇中描述最常见的自动化测试类型&#xff0c; 还描述了可以增强您的自动化测试套件可维护性和扩展性的“设计模式”。还没有使用这些技术…

数学小课堂:数学的用途(黄金分割)

文章目录 引言I 黄金分割1.1 几何图形的相似性1.2 自然界的物理学特征(螺旋线)1.3 利用数学指导音乐II 使用几何学技术将绘画变得逼真2.1 单点透视法2.2 视觉的数学原理(透视的视觉效果)引言 黄金分割比例大约是1:0.618,也就是1.618。符合黄金比例的雕塑或建筑就看上去很顺…

软件项目管理知识回顾---软件项目风险管理

软件项目风险管理 7.风险管理 7.1风险管理 1.风险管理&#xff1a;贯穿在项目开发中的一系列的管理过程。 2.风险管理过程&#xff1a;风险识别&#xff0c;风险计划&#xff0c;风险解决和风险监控 3.PMP风险管理过程 风险管理计划风险识别风险定量分析风险定性分析风险监控7.…

上海亚商投顾:沪指窄幅震荡 ChatGPT概念股全线下挫

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。市场情绪三大指数早盘小幅冲高&#xff0c;随后又震荡走低&#xff0c;午后一度集体翻绿&#xff0c;临近尾盘有所回升。Chat…

力扣79.单词搜索

文章目录力扣79.单词搜索题目描述方法一&#xff1a;回溯深搜力扣79.单词搜索 题目描述 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#x…

Dokcer 数据卷

基本的概念数据卷就是宿主机上的一个文件或目录当容器目录和数据卷&#xff08;宿主机&#xff09;目录绑定&#xff0c;双方修改会立即同步操作一个数据卷可以被多个容器同时挂载数据卷作用&#xff1a;容器数据的持久化 外部机器和容器间接通信 容器之间数据交换使用 -v命令。…

Leetcode14. 最长公共前缀

一、题目描述&#xff1a; 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀&#xff0c;返回空字符串 “”。 示例 1&#xff1a; 输入&#xff1a;strs [“flower”,“flow”,“flight”] 输出&#xff1a;“fl” 示例 2&#xff1a; 输入&#xff1a;…

OpenFeign核心源码简读

目录 1、FeignClient注册逻辑 1.1、入口EnableFeignClients 1.2、FeignClientsRegistrar 1.2.1、registerBeanDefinitions 1.2.2、registerFeignClients 1.2.3、registerFeignClient 1.3、FeignClientFactoryBean 1.3.1、getObject -> getTarget 1.3.2、loadBalanc…

Linux学习(3)基本操作与在线帮助文档

目录 文本模式下命令的下达 基础命令的操作 重要的几个热键[Tab], [ctrl]-c, [ctrl]-d [Tab]按键 [Ctrl]-c 按键 [Ctrl]-d 按键 错误信息的察看 Linux系统的在线求助man page与info page man page 搜寻特定命令/文件的man page说明文件 info page 以下内容转载自…

[Flink]部署模式(看pdf上的放上面)

运行一个wordcountval dataStream: DataStream[String] environment.socketTextStream("hadoop1", 7777) //流式数据不能进行groupBy,流式数据要来一条处理一次.0表示第一个元素,1表示第二个元素 //keyBy(0)根据第一个元素进行分组 val out: DataStream[(String, In…

五月天演唱会门票开售,retry了一小时也没re进去!到底是什么高科技在作祟?!

等待了三年&#xff0c;大型线下演唱会终于回归了&#xff01;前段时间&#xff0c;文化和旅游部市场管理司发布通知称&#xff0c;自2023年2月16日起&#xff0c;各地文化和旅游行政部门恢复对涉港澳台营业性演出的受理和审批。据中国演出行业协会在业内调研了解&#xff0c;周…

Java常用框架(三)

三、SpringBoot 1.Spring及其优缺点&#xff1f; 1.1 概念 重量级企业开发框架EJB的替代品&#xff0c;通过依赖注入、面向切面编程&#xff0c;使用简单Java对象POJO为企业Java开发提供了相对简单的方法。 1.2 优缺点 1.2.1 优点 组件代码轻量级 1.2.1 缺点 配置重量级…

REDIS10_GEO添加、距离、半径命令、美团附近酒店推送案例

文章目录①. 添加元素 - GEOADD②. 返回经纬度 - GEOPOS③. 返回距离 - GEODIST④. 返回哈希 - GEOHASH⑤. 半径 - GEORADIUS⑥. GEORADIUSBYMEMBER ⑦. 美团地图位置附近的酒店推送①. 添加元素 - GEOADD ①. 添加:GEOADD key [NX|XX] [CH] longitude latitude member [longit…