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

news/2025/3/19 11:56:03/

目录

问题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.ppmy.cn/news/1580311.html

相关文章

出租车数据可视化分析-大数据-实训大作业

第1章 项目绪论 1.1项目的总体说明背景及意义 在纽约&#xff0c;游客们往往把自由女神象、帝国大厦、中央公园等视为纽约的象征, 但穿梭在人海中的出租车也是纽约靓丽的人文景观之一, 是其流动的风景线, 在纽约公共文化中别具魅力。本项目利用之前从seaborn上下载的数据tax…

基于Asp.net的物流配送管理系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

DeepSeek技术解析:MoE架构实现与代码实战

以下是一篇结合DeepSeek技术解析与代码示例的技术文章&#xff0c;重点展示其核心算法实现与落地应用&#xff1a; DeepSeek技术解析&#xff1a;MoE架构实现与代码实战 作为中国AI领域的创新代表&#xff0c;DeepSeek在混合专家模型&#xff08;Mixture of Experts, MoE&…

Chat2DB:自然语言生成 SQL 的时代来临,数据库管理更简单

作者&#xff1a;后端小肥肠 目录 1. 前言 2. 数据库管理工具对比 3. Chat2DB安装及实际测评 3.1. Chat2DB安装 3.2. AI功能测评 3.2.1. 自然语言创建表 3.2.2. 自然语言查询 4. 结语 1. 前言 提到数据库管理工具&#xff0c;Navicat 曾经是大家的首选&#xff0c;但随…

【C语言】:学生管理系统(多文件版)

一、文件框架 二、Data data.txt 三、Inc 1. list.h 学生结构体 #ifndef __LIST_H__ #define __LIST_H__#include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdbool.h> #include <time.h>#define MAX_LEN 20// 学生信息…

Nuxt2 vue 给特定的页面 body 设置 background 不影响其他页面

首先认识一下 BODY_ATTRS 他可以在页面单独设置 head () {return {bodyAttrs: {form: form-body}};},设置完效果是只有这个页面会加上 接下来在APP.vue中添加样式

顺序表和链表的对比(一)

前言 今天给小伙伴们分享的是在数据结构中顺序表和链表的对比。它们在计算机科学和软件开发中具有广泛的应用&#xff0c;是理解更复杂数据结构&#xff08;如栈、队列、树、图等&#xff09;的基础。这次将会给大家从定义初始化&#xff0c;以及功能增删查改上进行详细对比&a…

WEB安全--SQL注入--DNSlog外带

一、原理&#xff1a; 访问域名时&#xff0c;dns协议将我们访问的语句解析为ip地址&#xff0c;并将其记录在其日志中&#xff1b;在这个过程中&#xff0c;如果我们在语句中写入SQL注入的语句&#xff0c;那么在dns解析时会执行这些语句并通过concat将结果和域名一起记录在日…