当前位置: 首页 > news >正文

编译Thingsboard3.7.0的过程记录

1、首先去掉test测试,否则会有一堆问题,pom.xml修改如下:

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>${surefire.version}</version><configuration><skipTests>true</skipTests></configuration></plugin>

2、同时要配置gradle7.3.3,另外下载gradle-tooling-api-7.3.3.jar(可以通过下载gradle里找出来)

同时通过下面方式上传到你自己本地的maven库里

mvn install:install-file "-Dmaven.repo.local=E:\stsm2\repository" "-DgroupId=org.gradle" "-DartifactId=gradle-tooling-api" "-Dversion=7.3.3" "-Dpackaging=jar" "-Dfile=E:\gradle-tooling-api-7.3.3.jar"

也可以到https://mvnrepository.com/下载gradle-tooling-api-7.3.3.jar

3、这个版本是用java17

4、编译出现下面错误

[INFO] Thingsboard Server JS Client for remote JS execution SUCCESS [  2.224 s]
[INFO] Thingsboard Server DAO Layer ....................... SUCCESS [ 20.653 s]
[INFO] Thingsboard Rule Engine Components ................. SUCCESS [ 11.866 s]
[INFO] Thingsboard Server Transport Modules ............... SUCCESS [  0.032 s]
[INFO] Thingsboard HTTP Transport Service ................. FAILURE [  3.383 s]
[INFO] Thingsboard MQTT Transport Service ................. SKIPPED
[INFO] Thingsboard CoAP Transport Service ................. SKIPPED
[INFO] Thingsboard LwM2m Transport Service ................ SKIPPED
[INFO] Thingsboard SNMP Transport Service ................. SKIPPED
[INFO] ThingsBoard Server UI .............................. SKIPPED
[INFO] Thingsboard Server Tools ........................... SKIPPED
[INFO] Thingsboard Rest Client ............................ SKIPPED
[INFO] ThingsBoard Server Application ..................... SKIPPED
[INFO] ThingsBoard Microservices .......................... SKIPPED
[INFO] ThingsBoard Docker Images .......................... SKIPPED
[INFO] ThingsBoard Web UI Microservice .................... SKIPPED
[INFO] ThingsBoard Version Control Executor ............... SKIPPED
[INFO] ThingsBoard Version Control Executor Microservice .. SKIPPED
[INFO] ThingsBoard Node Microservice ...................... SKIPPED
[INFO] ThingsBoard Transport Microservices ................ SKIPPED
[INFO] ThingsBoard MQTT Transport Microservice ............ SKIPPED
[INFO] ThingsBoard HTTP Transport Microservice ............ SKIPPED
[INFO] ThingsBoard COAP Transport Microservice ............ SKIPPED
[INFO] ThingsBoard LWM2M Transport Microservice ........... SKIPPED
[INFO] ThingsBoard SNMP Transport Microservice ............ SKIPPED
[INFO] ThingsBoard JavaScript Executor Microservice ....... SKIPPED
[INFO] ThingsBoard Monitoring Service ..................... SKIPPED
[INFO] ThingsBoard Monitoring Microservice ................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  02:59 min
[INFO] Finished at: 2024-09-29T09:56:04+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.thingsboard:gradle-maven-plugin:1.0.12:invoke (default) on project http: Execution default of goal org.thingsboard:gradle-maven-plugin:1.0.12:invoke failed: A required class was missing while executing org.thingsboard:gradle-maven-plugin:1.0.12:invoke: org/gradle/internal/service/DefaultServiceRegistry
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.thingsboard:gradle-maven-plugin:1.0.12
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy

5、主要原因就是 找不到类 org/gradle/internal/service/DefaultServiceRegistry

 原因找不到,不知道是什么原因,后来还是用它自己下载的gradle编译才能成功

6、ui-ngx的pom.xml里去掉下面内容,因为也下载不下来,自己手动操作

<executions><execution><id>install node and npm</id><goals><goal>install-node-and-yarn</goal></goals><configuration><nodeVersion>v20.11.1</nodeVersion><yarnVersion>v1.22.17</yarnVersion></configuration></execution><execution><id>yarn install</id><goals><goal>yarn</goal></goals><configuration><arguments>install --non-interactive --network-concurrency 4 --network-timeout 100000 --mutex network</arguments></configuration></execution></executions>
<executions><execution><id>yarn build</id><goals><goal>yarn</goal></goals><configuration><arguments>run build:prod</arguments></configuration></execution></executions>

8、到ui-ngx里自己用

yarn install

yarn run build:prod

9、之前编译出现下面错误

[[1;34mINFO[m] Thingsboard Extensions ............................. [1;32mSUCCESS[m [  0.143 s]
[[1;34mINFO[m] Thingsboard Rule Engine API ........................ [1;32mSUCCESS[m [  2.339 s]
[[1;34mINFO[m] Thingsboard Server JS Client for remote JS execution [1;32mSUCCESS[m [  1.052 s]
[[1;34mINFO[m] Thingsboard Server DAO Layer ....................... [1;32mSUCCESS[m [ 13.171 s]
[[1;34mINFO[m] Thingsboard Rule Engine Components ................. [1;32mSUCCESS[m [  9.574 s]
[[1;34mINFO[m] Thingsboard Server Transport Modules ............... [1;32mSUCCESS[m [  0.030 s]
[[1;34mINFO[m] Thingsboard HTTP Transport Service ................. [1;31mFAILURE[m [01:09 min]
[[1;34mINFO[m] Thingsboard MQTT Transport Service ................. [1;33mSKIPPED[m
[[1;34mINFO[m] Thingsboard CoAP Transport Service ................. [1;33mSKIPPED[m
[[1;34mINFO[m] Thingsboard LwM2m Transport Service ................ [1;33mSKIPPED[m
[[1;34mINFO[m] Thingsboard SNMP Transport Service ................. [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Server UI .............................. [1;33mSKIPPED[m
[[1;34mINFO[m] Thingsboard Server Tools ........................... [1;33mSKIPPED[m
[[1;34mINFO[m] Thingsboard Rest Client ............................ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Server Application ..................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Microservices .......................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Docker Images .......................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Web UI Microservice .................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Version Control Executor ............... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Version Control Executor Microservice .. [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Node Microservice ...................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Transport Microservices ................ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard MQTT Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard HTTP Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard COAP Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard LWM2M Transport Microservice ........... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard SNMP Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard JavaScript Executor Microservice ....... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Monitoring Service ..................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Monitoring Microservice ................ [1;33mSKIPPED[m
[[1;34mINFO[m] [1m------------------------------------------------------------------------[m
[[1;34mINFO[m] [1;31mBUILD FAILURE[m
[[1;34mINFO[m] [1m------------------------------------------------------------------------[m
[[1;34mINFO[m] Total time:  03:12 min
[[1;34mINFO[m] Finished at: 2024-09-30T13:13:19+08:00
[[1;34mINFO[m] [1m------------------------------------------------------------------------[m
[[1;31mERROR[m] Failed to execute goal [32morg.thingsboard:gradle-maven-plugin:1.0.12:invoke[m [1m(default)[m on project [36mhttp[m: [1;31morg.gradle.tooling.GradleConnectionException: Could not install Gradle distribution from 'https://services.gradle.org/distributions/gradle-7.3.3-bin.zip'.[m -> [1m[Help 1][m
[[1;31mERROR[m] 
[[1;31mERROR[m] To see the full stack trace of the errors, re-run Maven with the [1m-e[m switch.
[[1;31mERROR[m] Re-run Maven using the [1m-X[m switch to enable full debug logging.
[[1;31mERROR[m] 
[[1;31mERROR[m] For more information about the errors and possible solutions, please read the following articles:
[[1;31mERROR[m] [1m[Help 1][m http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[[1;31mERROR[m] 
[[1;31mERROR[m] After correcting the problems, you can resume the build with the command
<groupId>org.thingsboard</groupId><artifactId>gradle-maven-plugin</artifactId><configuration><gradleProjectDirectory>${main.dir}/packaging/${pkg.type}</gradleProjectDirectory><gradleDistribution>https://mirrors.cloud.tencent.com/gradle/gradle-7.3.3-bin.zip</gradleDistribution><gradleInstallationDir>D:\\gradle7.3.3</gradleInstallationDir><tasks><task>build</task><task>buildDeb</task><task>buildRpm</task></tasks><args>

必须要用它下载的gradle来编译才行,否则自己搞个环境gradle7.3.3老是报下面错误

Execution default of goal org.thingsboard:gradle-maven-plugin:1.0.12:invoke failed: A required class was missing while executing org.thingsboard:gradle-maven-plugin:1.0.12:invoke: org/gradle/internal/service/DefaultServiceRegistry 

9、上面解决后,出现下面错误,就是web-ui模块出现问题,因为要下载yarn进行打包等,删除掉了,所以少了东西,需要手工自己进行下载yarn,打包了

[[1;34mINFO[m] ThingsBoard Docker Images .......................... [1;32mSUCCESS[m [  2.426 s]
[[1;34mINFO[m] ThingsBoard Web UI Microservice .................... [1;31mFAILURE[m [  1.345 s]
[[1;34mINFO[m] ThingsBoard Version Control Executor ............... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Version Control Executor Microservice .. [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Node Microservice ...................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Transport Microservices ................ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard MQTT Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard HTTP Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard COAP Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard LWM2M Transport Microservice ........... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard SNMP Transport Microservice ............ [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard JavaScript Executor Microservice ....... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Monitoring Service ..................... [1;33mSKIPPED[m
[[1;34mINFO[m] ThingsBoard Monitoring Microservice ................ [1;33mSKIPPED[m
[[1;34mINFO[m] [1m------------------------------------------------------------------------[m
[[1;34mINFO[m] [1;31mBUILD FAILURE[m
[[1;34mINFO[m] [1m------------------------------------------------------------------------[m
[[1;34mINFO[m] Total time:  06:14 min
[[1;34mINFO[m] Finished at: 2024-09-30T14:55:03+08:00
[[1;34mINFO[m] [1m------------------------------------------------------------------------[m
[[1;31mERROR[m] Failed to execute goal [32morg.apache.maven.plugins:maven-assembly-plugin:3.0.0:single[m [1m(assembly)[m on project [36mweb-ui[m: [1;31mFailed to create assembly: Error adding file to archive: E:\test\thingsboard-master\msa\web-ui\target\package\windows\bin\tb-web-ui.exe[m -> [1m[Help 1][m
[[1;31mERROR[m] 
[[1;31mERROR[m] To see the full stack trace of the errors, re-run Maven with the [1m-e[m switch.
[[1;31mERROR[m] Re-run Maven using the [1m-X[m switch to enable full debug logging.
[[1;31mERROR[m] 
[[1;31mERROR[m] For more information about the errors and possible solutions, please read the following articles:
[[1;31mERROR[m] [1m[Help 1][m http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[[1;31mERROR[m] 
[[1;31mERROR[m] After correcting the problems, you can resume the build with the command
[[1;31mERROR[m]   [1mmvn <args> -rf :web-ui

打包如下,半天下载不下来,看来又要手工去下载了。放到PKG_CACHE_PATH里:

E:\test\thingsboard-master\msa\web-ui>yarn pkg
yarn run v1.21.1
$ tsc && pkg -t node16-linux-x64,node16-win-x64 --out-path ./target ./target/src && node install.js
> pkg@5.8.1
> Fetching base Node.js binaries to PKG_CACHE_PATHfetched-v16.16.0-linux-x64          [                    ] 1%

需要放在这个地方,只有手工下载3.4版本了从在 Releases · vercel/pkg-fetch · GitHub 找到 v3.4下载

10、下载后修改如下的名称才行,总共需要下载4个,如下修改名称

11、这样总算编译成功

附:重新自动编译mvn clean install -DskipTests

删除maven下载有问题的包库文件,以便下次正确下载

for /r %i in (*.lastUpdated) do del %i

相关文章:

编译Thingsboard3.7.0的过程记录

1、首先去掉test测试&#xff0c;否则会有一堆问题&#xff0c;pom.xml修改如下&#xff1a; <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>${surefire.version}</ve…...

vulnhub-THE PLANETS-EARTH靶机

下载并导入靶机至VMWare&#xff0c;设置网络模式为NAT&#xff0c;开机 开启攻击机&#xff08;kali&#xff09;&#xff0c;也设置为Nat模式&#xff0c;与靶机处于同一网段 扫描靶机ip Nmap 192.168.114.0/24 扫描网段内活跃的主机 可以推断靶机ip为192.168.114.129 扫描…...

【C语言】分支和循环(2)

&#x1f914;个人主页: 起名字真南 &#x1f619;个人专栏:【数据结构初阶】 【C语言】 【C】 目录 1 关系操作符2 条件操作符3 逻辑操作符 &#xff1a;|| &#xff0c;&& &#xff0c;&#xff01;3.1 逻辑取反运算符3.2 与运算符3.3 或运算符3.4 练习闰年判断3.5 短…...

Python数据分析-远程办公与心理健康分析

一、研究背景 随着信息技术的飞速发展和全球化的推进&#xff0c;远程工作&#xff08;Remote Work&#xff09;成为越来越多企业和员工的选择。尤其是在2020年新冠疫情&#xff08;COVID-19&#xff09;爆发后&#xff0c;全球范围内的封锁措施使得远程工作模式迅速普及。根据…...

LabVIEW提高开发效率技巧----使用动态事件

在LabVIEW开发过程中&#xff0c;用户交互行为可能是多样且不可预知的。为应对这些变化&#xff0c;使用动态事件是一种有效的策略。本文将从多个角度详细介绍动态事件的概念及其在LabVIEW开发中的应用技巧&#xff0c;并结合实际案例&#xff0c;说明如何通过动态事件提高程序…...

【STM32开发之寄存器版】(五)-窗口看门狗WWDG

一、前言 窗口看门狗简介&#xff1a; 窗口看门狗通常被用来监测&#xff0c;由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新&#xff0c;看门狗电路在达到预置的时间周期时&#xff0c;会产生一个M…...

Leetcode203.移除链表元素-Python

题目链接&#xff1a;203. 移除链表元素 - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a; 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 示例 1&#xff1a; 输入&a…...

属性拷贝MapStruct

端请求通过VO对象接收&#xff0c;并通过DTO对象进行流转&#xff0c;最后转换成DO对象与数据库DAO层进行交互&#xff0c;反之亦然。 当业务简单的时候&#xff0c;可以通过手动编码getter/setter函数来复制对象属性。但是当业务变的复杂&#xff0c;对象属性变得很多&#x…...

Chromium 添加书签功能浅析c++

1、在点击添加书签时候此UI控制逻辑代码在 chrome\browser\ui\views\bookmarks\bookmark_bar_view.cc chrome\browser\ui\views\bookmarks\bookmark_bar_view.h 可以在此看到完成 移除 按钮逻辑&#xff0c;以及书签监听事件等。。。 // Implementation for BookmarkNodeAdd…...

Spring Cloud Netflix Ribbon 负载均衡详解和案例示范

1. 引言 在传统的集中式架构中&#xff0c;负载均衡器一般是放置在服务器端的&#xff0c;例如 Nginx等。随着微服务架构的兴起&#xff0c;服务实例的数量和部署地点变得更加动态和分布式&#xff0c;这使得在客户端进行负载均衡成为了一种可行且更灵活的方案。Netflix Ribbo…...

Armeria gPRC 高级特性 - 装饰器、无框架请求、阻塞处理器、Nacos集成、负载均衡、rpc异常处理、文档服务......

文章目录 定义一个示例高级特性装饰器概述简单案例多种装饰方式 无框架请求概述使用方式 阻塞任务处理器背景概述多种使用方式 rpc 异常统一处理使用方式更详细的异常信息 Armeria 提供 gRPC 客户端多种调用方式同步调用异步调用使用装饰器 负载均衡简单案例Armeria 提供的所有…...

如何制作一个企业网站,建设网站的基本步骤有哪些?

企业网站是企业的门面和名片&#xff0c;决定网民对企业的第一印象&#xff0c;因此&#xff0c;现在很多公司想做一个属于自己网站&#xff0c;但是不知道怎么做&#xff0c;更不知道从何做起&#xff0c;更别说做成了。为了能够让大家清楚如何做一个企业网站&#xff0c;现在…...

01-python+selenium自动化测试-基础学习

前言 基于python3和selenium3做自动化测试&#xff0c;俗话说&#xff1a;工欲善其事必先利其器&#xff1b;没有金刚钻就不揽那瓷器活&#xff0c;磨刀不误砍柴工&#xff0c;因此你必须会搭建基本的开发环境&#xff0c;掌握python基本的语法和一个IDE来进行开发&#xff0c…...

【redis-05】redis保证和mysql数据一致性

redis系列整体栏目 内容链接地址【一】redis基本数据类型和使用场景https://zhenghuisheng.blog.csdn.net/article/details/142406325【二】redis的持久化机制和原理https://zhenghuisheng.blog.csdn.net/article/details/142441756【三】redis缓存穿透、缓存击穿、缓存雪崩htt…...

写一个登录判断机制py

创建一个简单的登录机制涉及到用户输入的验证和与数据库中存储的凭证的比较。以下是一个使用Python语言和SQLite数据库的示例。这个例子仅用于教学目的&#xff0c;实际应用中应该使用更安全的方法来存储和验证密码&#xff0c;比如使用密码哈希。 首先&#xff0c;你需要安装…...

特征点检测与匹配是计算机视觉中的基础任务之一,广泛应用于图像配准、物体识别、运动估计、三维重建等领域。

特征点检测与匹配是计算机视觉中的基础任务之一&#xff0c;广泛应用于图像配准、物体识别、运动估计、三维重建等领域。下面是一些关键的知识点&#xff1a; 1. 特征点检测 特征点检测的目的是从图像中找到独特的、稳定的点&#xff0c;这些点在图像变化&#xff08;如旋转、…...

python——Echarts现交互式动态可视化

数据展示 20192018201720162015201420132012北京5817.15785.91765430.78755081.264723.864027.16093661.10973314.934天津2410.252106.23972310.35522723.52667.112390.35182079.07161760.0201河北3742.673513.86433233.83322849.872649.182446.61662295.62032084.2825山西234…...

【含开题报告+文档+PPT+源码】基于SSM框架的民宿酒店预定系统的设计与实现

开题报告 随着人们旅游需求的增加&#xff0c;民宿行业呈现出快速发展的趋势。传统的住宿方式逐渐无法满足人们对个性化、舒适、便捷的需求&#xff0c;而民宿作为一种新型的住宿选择&#xff0c;逐渐受到人们的青睐。民宿的特点是具有独特的风格、便捷的地理位置、相对亲近的…...

正确理解协程

import asyncio# 定义一个异步函数&#xff08;协程&#xff09; async def say_after(delay, what):# 等待指定的时间await asyncio.sleep(delay)# 打印消息print(what)# 定义另一个异步函数 async def main():# 同时启动两个协程&#xff0c;并等待这2个协程结束await say_af…...

蒙特卡罗方法 - 采样和蒙特卡罗方法篇

序言 蒙特卡罗&#xff08; Monte Carlo \text{Monte Carlo} Monte Carlo&#xff09;方法&#xff0c;也被称为计算机随机模拟方法&#xff0c;是一种基于“随机数”的计算方法。这一方法源于美国在第二次世界大战期间研制原子弹的“曼哈顿计划”。其核心思想是使用随机数&am…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么&#xff1f;它的作用是什么&#xff1f; Spring框架的核心容器是IoC&#xff08;控制反转&#xff09;容器。它的主要作用是管理对…...

嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)

目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 ​编辑​编辑 UDP的特征 socke函数 bind函数 recvfrom函数&#xff08;接收函数&#xff09; sendto函数&#xff08;发送函数&#xff09; 五、网络编程之 UDP 用…...

xmind转换为markdown

文章目录 解锁思维导图新姿势&#xff1a;将XMind转为结构化Markdown 一、认识Xmind结构二、核心转换流程详解1.解压XMind文件&#xff08;ZIP处理&#xff09;2.解析JSON数据结构3&#xff1a;递归转换树形结构4&#xff1a;Markdown层级生成逻辑 三、完整代码 解锁思维导图新…...

macOS 终端智能代理检测

&#x1f9e0; 终端智能代理检测&#xff1a;自动判断是否需要设置代理访问 GitHub 在开发中&#xff0c;使用 GitHub 是非常常见的需求。但有时候我们会发现某些命令失败、插件无法更新&#xff0c;例如&#xff1a; fatal: unable to access https://github.com/ohmyzsh/oh…...

JS红宝书笔记 - 3.3 变量

要定义变量&#xff0c;可以使用var操作符&#xff0c;后跟变量名 ES实现变量初始化&#xff0c;因此可以同时定义变量并设置它的值 使用var操作符定义的变量会成为包含它的函数的局部变量。 在函数内定义变量时省略var操作符&#xff0c;可以创建一个全局变量 如果需要定义…...