idea 编译打包nacos2.0.3源码,生成可执行jar 包常见问题

news2025/3/19 10:17:19

目录

问题1

问题2

问题3

问题4


简单记录一下nacos2.0.3,编译打包的步骤,首先下载源码,免积分下载:

nacos源码:

https://download.csdn.net/download/fyihdg/90461118

protoc 安装包

https://download.csdn.net/download/fyihdg/90492686

下载完成后,导入idea 会有各种问题,本文只记录一些常见的问题

naocs的路径,不要有中文或空格路径,否则会报一些错误:

问题1

istios模块下实体类报编译错误,原因是protoc 没有安装,本地安装对应的版本,nacos源码使用版本:

安装成功后,输入命令检查 

protoc --version

我们就安装对应的版本,如果是弹出这个界面,就证明安装成功

再次编译才会成功

问题2

Caused by: java.lang.IllegalStateException: Fail to init node, please see the logs to find the reason.
	at com.alipay.sofa.jraft.RaftServiceFactory.createAndInitRaftNode(RaftServiceFactory.java:48)
	at com.alipay.sofa.jraft.RaftGroupService.start(RaftGroupService.java:129)
	at com.alibaba.nacos.core.distributed.raft.JRaftServer.createMultiRaftGroup(JRaftServer.java:268)
	at com.alibaba.nacos.core.distributed.raft.JRaftProtocol.addRequestProcessors(JRaftProtocol.java:163)
	at com.alibaba.nacos.naming.consistency.persistent.impl.PersistentServiceProcessor.afterConstruct(PersistentServiceProcessor.java:79)
	at com.alibaba.nacos.naming.consistency.persistent.PersistentConsistencyServiceDelegateImpl.createNewPersistentServiceProcessor(PersistentConsistencyServiceDelegateImpl.java:108)
	at com.alibaba.nacos.naming.consistency.persistent.PersistentConsistencyServiceDelegateImpl.<init>(PersistentConsistencyServiceDelegateImpl.java:54)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:175)
	... 150 common frames omitted

解决方案,在Nacso启动类,添加:

-Dnacos.standalone=true -Dnacos.home=D:\\soft\\nacos2.0.3\\nacos

 这样才能启动成功。

问题3

打包命令在这里可以找到:.github/workflows/ci.yml

执行打包命令:

mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U

报错: 

Too many files with unapproved license: 231 See RAT report in: D:\soft\nacos2.0.3\nacos\target\rat.txt

这个问题是由于 Apache RAT(Release Audit Tool)检测到项目中有大量文件没有包含合适的许可证头信息。Apache RAT 是一个用于检查项目中文件是否符合 Apache 许可证要求的工具。 

解决:

 D:\soft\nacos2.0.3\nacos\pom.xml文件,apache-rat-plugin 插件添加

                        <!-- 排除 RocksDB 相关文件 -->
                        <exclude>**/data/protocol/raft/**</exclude>
                        <!-- 排除配置文件 -->
                        <exclude>**/data/tps/**</exclude>
                        <exclude>**/data/loader/**</exclude>
                        <!-- 排除临时文件 -->
                        <exclude>**/data/upgrade.state</exclude>
                        <exclude>**/.flattened-pom.xml</exclude>
                        <!-- 排除压缩文件 -->
                        <exclude>**/*.zip</exclude>
                        <exclude>**/target/**</exclude>
                        <exclude>**/*.log</exclude>
                        <exclude>**/*.json</exclude>
                        <exclude>**/*.xml</exclude>
                        <exclude>**/*.properties</exclude>
                        <exclude>**/*.txt</exclude>
                        <exclude>**/*.md</exclude>
                        <exclude>**/*.iml</exclude>
                        <exclude>**/*.class</exclude>
                        <exclude>**/*.jar</exclude>
                        <exclude>**/*.war</exclude>
                        <exclude>**/*.ear</exclude>
                        <exclude>**/*.zip</exclude>
                        <exclude>**/*.tar.gz</exclude>
                        <exclude>**/*.bin</exclude>
                        <exclude>**/*.dat</exclude>
                        <exclude>**/*.cache</exclude>
                        <exclude>**/*.lst</exclude>
                        <exclude>**/*.sql</exclude>
                        <exclude>**/*.csv</exclude>
                        <exclude>**/*.png</exclude>
                        <exclude>**/*.jpg</exclude>
                        <exclude>**/*.gif</exclude>
                        <exclude>**/*.ico</exclude>
                        <exclude>**/*.svg</exclude>
                        <exclude>**/*.woff</exclude>
                        <exclude>**/*.woff2</exclude>
                        <exclude>**/*.ttf</exclude>
                        <exclude>**/*.eot</exclude>
                        <exclude>**/*.otf</exclude>
                        <exclude>**/*.swf</exclude>
                        <exclude>**/*.mp3</exclude>
                        <exclude>**/*.mp4</exclude>
                        <exclude>**/*.flv</exclude>
                        <exclude>**/*.avi</exclude>
                        <exclude>**/*.wmv</exclude>
                        <exclude>**/*.mov</exclude>
                        <exclude>**/*.mkv</exclude>
                        <exclude>**/*.pdf</exclude>
                        <exclude>**/*.doc</exclude>
                        <exclude>**/*.docx</exclude>
                        <exclude>**/*.xls</exclude>
                        <exclude>**/*.xlsx</exclude>
                        <exclude>**/*.ppt</exclude>
                        <exclude>**/*.pptx</exclude>
                        <exclude>**/*.odt</exclude>
                        <exclude>**/*.ods</exclude>
                        <exclude>**/*.odp</exclude>
                        <exclude>**/*.odg</exclude>
                        <exclude>**/*.odc</exclude>
                        <exclude>**/*.odf</exclude>
                        <exclude>**/*.odb</exclude>
                        <exclude>**/*.sxc</exclude>
                        <exclude>**/*.sxd</exclude>
                        <exclude>**/*.sxi</exclude>
                        <exclude>**/*.sxw</exclude>
                        <exclude>**/*.sxg</exclude>
                        <exclude>**/*.stw</exclude>
                        <exclude>**/*.sxm</exclude>
                        <exclude>**/*.otc</exclude>
                        <exclude>**/*.ots</exclude>
                        <exclude>**/*.otp</exclude>
                        <exclude>**/*.otg</exclude>
                        <exclude>**/*.odi</exclude>
                        <exclude>**/*.oth</exclude>
                        <exclude>**/*.oxt</exclude>
                        <exclude>**/*.odb</exclude>
                        <exclude>**/*.odm</exclude>
                        <exclude>**/*.ott</exclude>
                        <exclude>**/*.otx</exclude>
                        <exclude>**/*.odc</exclude>
                        <exclude>**/*.odf</exclude>
                        <exclude>**/*.odg</exclude>
                        <exclude>**/*.odi</exclude>
                        <exclude>**/*.odp</exclude>
                        <exclude>**/*.ods</exclude>
                        <exclude>**/*.odt</exclude>
                        <exclude>**/*.oga</exclude>
                        <exclude>**/*.ogg</exclude>
                        <exclude>**/*.ogv</exclude>
                        <exclude>**/*.ogx</exclude>
                        <exclude>**/*.spx</exclude>
                        <exclude>**/*.opus</exclude>
                        <exclude>**/*.webm</exclude>
                        <exclude>**/*.mkv</exclude>
                        <exclude>**/*.flac</exclude>
                        <exclude>**/*.aac</exclude>
                        <exclude>**/*.m4a</exclude>
                        <exclude>**/*.mp3</exclude>
                        <exclude>**/*.wav</exclude>
                        <exclude>**/*.wma</exclude>
                        <exclude>**/*.mid</exclude>
                        <exclude>**/*.midi</exclude>
                        <exclude>**/*.kar</exclude>
                        <exclude>**/*.ape</exclude>
                        <exclude>**/*.ra</exclude>
                        <exclude>**/*.rm</exclude>
                        <exclude>**/*.ram</exclude>
                        <exclude>**/*.wv</exclude>
                        <exclude>**/*.wvp</exclude>
                        <exclude>**/*.aif</exclude>
                        <exclude>**/*.aiff</exclude>
                        <exclude>**/*.aifc</exclude>
                        <exclude>**/*.au</exclude>
                        <exclude>**/*.snd</exclude>
                        <exclude>**/*.voc</exclude>
                        <exclude>**/*.8svx</exclude>
                        <exclude>**/*.smp</exclude>
                        <exclude>**/*.sph</exclude>
                        <exclude>**/*.smpl</exclude>
                        <exclude>**/*.smpls</exclude>
                        <exclude>**/*.smplx</exclude>
                        <exclude>**/*.smplz</exclude>
                        <exclude>**/*.smpl2</exclude>
                        <exclude>**/*.smpl3</exclude>
                        <exclude>**/*.smpl4</exclude>
                        <exclude>**/*.smpl5</exclude>
                        <exclude>**/*.smpl6</exclude>
                        <exclude>**/*.smpl7</exclude>
                        <exclude>**/*.smpl8</exclude>
                        <exclude>**/*.smpl9</exclude>
                        <exclude>**/*.smpl10</exclude>
                        <exclude>**/*.smpl11</exclude>
                        <exclude>**/*.smpl12</exclude>
                        <exclude>**/*.smpl13</exclude>
                        <exclude>**/*.smpl14</exclude>
                        <exclude>**/*.smpl15</exclude>
                        <exclude>**/*.smpl16</exclude>
                        <exclude>**/*.smpl17</exclude>
                        <exclude>**/*.smpl18</exclude>
                        <exclude>**/*.smpl19</exclude>
                        <exclude>**/*.smpl20</exclude>
                        <exclude>**/*.smpl21</exclude>
                        <exclude>**/*.smpl22</exclude>
                        <exclude>**/*.smpl23</exclude>
                        <exclude>**/*.smpl24</exclude>
                        <exclude>**/*.smpl25</exclude>
                        <exclude>**/*.smpl26</exclude>
                        <exclude>**/*.smpl27</exclude>
                        <exclude>**/*.smpl28</exclude>
                        <exclude>**/*.smpl29</exclude>
                        <exclude>**/*.smpl30</exclude>
                        <exclude>**/*.smpl31</exclude>
                        <exclude>**/*.smpl32</exclude>
                        <exclude>**/*.smpl33</exclude>
                        <exclude>**/*.smpl34</exclude>
                        <exclude>**/*.smpl35</exclude>
                        <exclude>**/*.smpl36</exclude>
                        <exclude>**/*.smpl37</exclude>
                        <exclude>**/*.smpl38</exclude>
                        <exclude>**/*.smpl39</exclude>
                        <exclude>**/*.smpl40</exclude>
                        <exclude>**/*.smpl41</exclude>
                        <exclude>**/*.smpl42</exclude>
                        <exclude>**/*.smpl43</exclude>
                        <exclude>**/*.smpl44</exclude>
                        <exclude>**/*.smpl45</exclude>
                        <exclude>**/*.smpl46</exclude>
                        <exclude>**/*.smpl47</exclude>
                        <exclude>**/*.smpl48</exclude>
                        <exclude>**/*.smpl49</exclude>
                        <exclude>**/*.smpl50</exclude>
                        <exclude>**/*.smpl51</exclude>
                        <exclude>**/*.smpl52</exclude>
                        <exclude>**/*.smpl53</exclude>
                        <exclude>**/*.smpl54</exclude>
                        <exclude>**/*.smpl55</exclude>
                        <exclude>**/*.smpl56</exclude>
                        <exclude>**/*.smpl57</exclude>
                        <exclude>**/*.smpl58</exclude>
                        <exclude>**/*.smpl59</exclude>
                        <exclude>**/*.smpl60</exclude>
                        <exclude>**/*.smpl61</exclude>
                        <exclude>**/*.smpl62</exclude>
                        <exclude>**/*.smpl63</exclude>
                        <exclude>**/*.smpl64</exclude>
                        <exclude>**/*.smpl65</exclude>
                        <exclude>**/*.smpl66</exclude>
                        <exclude>**/*.smpl67</exclude>
                        <exclude>**/*.smpl68</exclude>
                        <exclude>**/*.smpl69</exclude>
                        <exclude>**/*.smpl70</exclude>
                        <exclude>**/*.smpl71</exclude>
                        <exclude>**/*.smpl72</exclude>
                        <exclude>**/*.smpl73</exclude>
                        <exclude>**/*.smpl74</exclude>
                        <exclude>**/*.smpl75</exclude>
                        <exclude>**/*.smpl76</exclude>
                        <exclude>**/*.smpl77</exclude>
                        <exclude>**/*.smpl78</exclude>
                        <exclude>**/*.smpl79</exclude>
                        <exclude>**/*.smpl80</exclude>
                        <exclude>**/*.smpl81</exclude>
                        <exclude>**/*.smpl82</exclude>
                        <exclude>**/*.smpl83</exclude>
                        <exclude>**/*.smpl84</exclude>
                        <exclude>**/*.smpl85</exclude>
                        <exclude>**/*.smpl86</exclude>
                        <exclude>**/*.smpl87</exclude>
                        <exclude>**/*.smpl88</exclude>
                        <exclude>**/*.smpl89</exclude>
                        <exclude>**/*.smpl90</exclude>
                        <exclude>**/*.smpl91</exclude>
                        <exclude>**/*.smpl92</exclude>
                        <exclude>**/*.smpl93</exclude>
                        <exclude>**/*.smpl94</exclude>
                        <exclude>**/*.smpl95</exclude>
                        <exclude>**/*.smpl96</exclude>
                        <exclude>**/*.smpl97</exclude>
                        <exclude>**/*.smpl98</exclude>
                        <exclude>**/*.smpl99</exclude>
                        <exclude>**/*.smpl100</exclude>
                        <exclude>**/*.smpl101</exclude>
                        <exclude>**/*.smpl102</exclude>
                        <exclude>**/*.smpl103</exclude>
                        <exclude>**/*.smpl104</exclude>
                        <exclude>**/*.smpl105</exclude>
                        <exclude>**/*.smpl106</exclude>
                        <exclude>**/*.smpl107</exclude>
                        <exclude>**/*.smpl108</exclude>
                        <exclude>**/*.smpl109</exclude>
                        <exclude>**/*.smpl110</exclude>
                        <exclude>**/*.smpl111</exclude>
                        <exclude>**/*.smpl112</exclude>
                        <exclude>**/*.smpl113</exclude>
                        <exclude>**/*.smpl114</exclude>
                        <exclude>**/*.smpl115</exclude>
                        <exclude>**/*.smpl116</exclude>
                        <exclude>**/*.smpl117</exclude>
                        <exclude>**/*.smpl118</exclude>
                        <exclude>**/*.smpl119</exclude>
                        <exclude>**/*.smpl120</exclude>
                        <exclude>**/*.smpl121</exclude>
                        <exclude>**/*.smpl122</exclude>
                        <exclude>**/*.smpl123</exclude>
                        <exclude>**/*.smpl124</exclude>
                        <exclude>**/*.smpl125</exclude>
                        <exclude>**/*.smpl126</exclude>
                        <exclude>**/*.smpl127</exclude>
                        <exclude>**/*.smpl128</exclude>
                        <exclude>**/*.smpl129</exclude>
                        <exclude>**/*.smpl130</exclude>
                        <exclude>**/*.smpl131</exclude>
                        <exclude>**/*.smpl132</exclude>
                        <exclude>**/*.smpl133</exclude>
                        <exclude>**/*.smpl134</exclude>

问题4

执行

mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U

报错:

[ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:3.5.0-M1:repackage (default) on project nacos-console: Execution default of goal org.springframework.boot:spring-boot-maven-plugin:3.5.0-M1:repackage failed: Plugin org.springframework.boot:spring-boot-maven-plugin:3.5.0-M1 or one of its dependencies could not be resolved: The following artifacts could not be resolved: org.springframework.boot:spring-boot-buildpack-platform:jar:3.5.0-M1, org.springframework.boot:spring-boot-loader-tools:jar:3.5.0-M1: Could not find artifact org.springframework.boot:spring-boot-buildpack-platform:jar:3.5.0-M1 in private-maven (https://nexus.51job.com/repository/maven-public/) -> [Help 1]

解决方案:

在idea全局搜索:spring-boot-maven-plugin ,然后添加版本号:

 <version>2.7.18</version>

才会生成可执行jar

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YOLOv8 OBB 旋转目标检测模型详解与实践

引言 在计算机视觉领域&#xff0c;目标检测是至关重要的任务之一。YOLO&#xff08;You Only Look Once&#xff09;系列算法因其高效性和准确性而广受欢迎。YOLOv8 作为稳定版本&#xff0c;在目标检测领域取得了显著成果&#xff0c;依旧能打。本文将深入探讨 YOLOv8 OBB&a…

机器学习之支持向量机(SVM)算法详解

文章目录 引言一、 什么是支持向量机&#xff08;SVM&#xff09;二、 SVM的基本原理三、数学推导1.线性可分情况2. 非线性可分情况3. 核函数 四、SVM的优缺点优点&#xff1a;缺点&#xff1a; 五、 应用场景六、 Python实现示例七、 总结 引言 支持向量机&#xff08;Suppor…

Linux系统移植篇(十一)Linux 内核启动流程

要分析 Linux 启动流程&#xff0c;同样需要先编译一下 Linux 源码&#xff0c;因为有很多文件是需要编译才 会生成的。首先分析 Linux 内核的连接脚本文件 arch/arm/kernel/vmlinux.lds&#xff0c;通过链接脚本可以 找到 Linux 内核的第一行程序是从哪里执行的。vmlinux.lds …

功能强大的电脑硬件检测及驱动安装工具

今天给大家带来一款超实用的电脑硬件检测软件——入梦工具箱。它是开源的&#xff0c;全程无广告干扰&#xff0c;使用起来清爽又安心。 打开入梦工具箱&#xff0c;进入“硬件信息”选项&#xff0c;电脑各个配件的详细参数一目了然。 无论是CPU的型号、频率&#xff0c;还是…

【Altium Designer】设计技巧

目录 技巧一&#xff1a;铺铜连接方式 技巧二&#xff1a;铺铜连接方式 技巧一&#xff1a;铺铜连接方式 Design -> Rules -> PolygonConnect 三种选择&#xff1a; 1&#xff09;Relief Connect&#xff1a;十字连接&#xff0c;可选择是45还是90 2&#xff09;Direct…

基于FPGA的3U机箱模拟量高速采样板ADI板卡,应用于轨道交通/电力储能等

板卡简介&#xff1a; 本板为模拟量高速采样板&#xff08;ADI&#xff09;&#xff0c;主要用于电机转速和相电流检测&#xff0c;以实现电机闭环控制。 性能规格&#xff1a; 电源&#xff1a;DC5V&#xff0c;DC3.3V&#xff0c;DC15V&#xff0c;DC24V FPGA&#xff1a;…

6. 顺序表和链表*****

目录 1. 顺序表 1.1 原理 1.2 常见的增删查改 1.3 顺序表的问题 2. 链表 2.1 原理 2.2 无头单向非循环的增删查改 2.3 链表面试题 1. 删除链表中等于给定值val的所有节点203. 移除链表元素 2. 链表逆置206. 反转链表&#xff08;考的最多&#xff09; 3.给你单链表的…

【AVRCP】蓝牙协议栈深度解析:AVCTP互操作性核心机制与实现细节

目录 一、事务标签&#xff08;Transaction Label&#xff09;机制 1.1 事务标签核心规则 1.2 事务标签作用域与并发性 1.3 实现建议与陷阱规避 1.4 协议设计思考 1.5 调试与验证 二、消息分片&#xff08;Fragmentation&#xff09;机制 2.1 分片触发条件 2.2 分片支…

【MySQL】基本查询(下)

文章目录 1.筛选分页结果2.Update3.Delete4.截断表5.插入查询结果6.聚合函数6.1什么是聚合函数6.2常见的聚合函数 7.group by7.1如何显示每个部门的平均工资和最高工资7.2显示每个部门的每种岗位的平均工资和最低工资7.3显示平均工资低于2000的部门和它的平均工资 8.总结 1.筛选…

Xpath Helper 替代 - XPath 测试器

Xpath Helper 最近开始&#xff08;2025.03&#xff09;无法使用了&#xff0c;选找了几款替代品&#xff0c;XPath 测试器 是目前看来最好的。 XPath 测试器 市场地址&#xff1a; https://chromewebstore.google.com/detail/xpath-测试器/cneomjecgakdfoeehmmmoiklncdiodmh …

C++学习之云盘项目nginx

1.复习 2.知识点概述 1. 一些基本概念 1.1 Nginx 初步认识 1.2 正向 / 反向代理 1.3 域名和 IP 2. Nginx 安装和配置 2.1 安装 2.2 配置 3. Nginx 的使用 3.1 部署静态网页 3.2 反向代理和负载均衡 课外知识导读 1. URL 和 URI 2. DNS 解析过程 1. 一些基…

JAVA学习*抽象类

抽象类 在Java中&#xff0c;被abstract关键字修饰的类被称为抽象类。 特点 1、当一个类继承了抽象类&#xff0c;一定要重写抽象方法&#xff01;&#xff01;&#xff01; public abstract class Animal {public int age;public String name;//抽象方法public abstract v…

数据库管理-第303期 数据库相关硬件文章汇总(20250319)

数据库管理303期 2025-03-19 数据库管理-第303期 数据库相关硬件文章汇总&#xff08;20250319&#xff09;1 CPU & 内存2 SSD3 RDMA4 存储5 CXL6 硬件采购7 数据库一体机总结 数据库管理-第303期 数据库相关硬件文章汇总&#xff08;20250319&#xff09; 作者&#xff1…

OctoTools:一个具有复杂推理可扩展工具的智体框架

25年2月来自斯坦福大学的论文“OctoTools: An Agentic Framework with Extensible Tools for Complex Reasoning”。 解决复杂的推理任务可能涉及视觉理解、域知识检索、数值计算和多步骤推理。现有方法使用外部工具增强大语言模型 (LLM)&#xff0c;但仅限于专业领域、有限的…

Canary

定义&#xff1a; Canary是一种用以防护栈溢出的保护机制。 原理&#xff1a; 是在一个函数的入口处&#xff0c;先从fs/gs寄存器中取出一个4字节&#xff08;eax,四字节通常是32位的文件&#xff09;或者8字节&#xff08;rax&#xff0c;通常是64位的文件&#xff09;的值…

c++领域展开第十七幕——STL(vector容器的模拟实现以及迭代器失效问题)超详细!!!!

文章目录 前言vector——基本模型vector——迭代器模拟实现vector——容量函数以及push_back、pop_backvector——默认成员函数vector——运算符重载vector——插入和删除函数vector——实现过程的问题迭代器失效memcpy的浅拷贝问题 总结 前言 上篇博客我们已经详细介绍了vecto…

BUUCTF Pwn babyheap_0ctf_2017 Unsorted bin attack部分

checksec exeinfo 开启了全保护 64位 查看函数&#xff1a; 堆题 增删查改齐了 可以在编辑堆的时候重新设置大小 存在堆溢出 delete函数的指针清零了 无UAF 想法是通过unsorted bin泄露libc基址&#xff1a; from pwn import *p process(./babyheap) #p remote("node…

【C++指南】内存管理完全手册:new/delete

&#x1f31f; 各位看官好&#xff0c;我是egoist2023&#xff01; &#x1f30d; 种一棵树最好是十年前&#xff0c;其次是现在&#xff01; &#x1f680; 今天来学习C内存管理的相关知识。 &#x1f44d; 如果觉得这篇文章有帮助&#xff0c;欢迎您一键三连&#xff0c;分享…