github:https://github.com/xinnan-tech/xiaozhi-esp32-server

一、JDK

1、JDK21下载:

https://www.oracle.com/cn/java/technologies/downloads/#jdk21-windows

  RPM安装:

rpm -ivh jdk-21_linux-x64_bin.rpm 

2、IDEA设置JDK

  • File → Project Structure中的SDK配置

二、在 IDEA 中配置 Maven

下载地址(V3.8):Download Apache Maven – Maven

1、设置 Maven 路径

  1. 打开 IntelliJ IDEA,点击菜单栏中的 File -> Settings(在 Mac 系统上是 IntelliJ IDEA -> Preferences)。
  2. 在弹出的设置窗口中,展开 Build, Execution, Deployment,选择 Build Tools -> Maven。
  3. 在 Maven home directory 字段中,指定本地安装的 Maven 路径。如果尚未安装 Maven,可以从 Maven 官方网站 下载并解压到本地目录。例如,C:\apache-maven-3.8.6(Windows 系统)或 /Users/yourusername/apache-maven-3.8.6(Mac 系统)。

2、执行打包操作

  1. 打开 IDEA 右侧的 Maven 工具窗口。如果没有看到该窗口,可以通过 View -> Tool Windows -> Maven 打开。
  2. 在 Maven 工具窗口中,展开项目节点,找到 Lifecycle 节点。
  3. 对于 Jar 包打包,双击 package 选项。Maven 会执行项目的清理、编译、测试(如果有测试用例)等操作,最后将项目打包成 Jar 包。打包完成后,在项目的 target 目录下可以找到生成的 Jar 包,路径类似 项目根目录/target/my-project-1.0.0.jar。

三、docker准备

1、 旧的docker删除

docker compose -f docker-compose_all.yml down

2、mysql和redis的docker启动

docker run --name xiaozhi-esp32-server-redis -d -p 6379:6379 redis

  mysql:

docker run \
--name xiaozhi-esp32-server-db \
--publish 3306:3306 \
--env TZ=Asia/Shanghai \
--env MYSQL_DATABASE="xiaozhi_esp32_server" \
--env MYSQL_ROOT_PASSWORD=123456 \
--restart unless-stopped \
--detach \
mysql:5.7 \
--character-set-server=utf8 \
--collation-server=utf8_unicode_ci \
--lower-case-table-names=1

四、启动manager-api的jar

java -jar xiaozhi-esp32-api.jar


 

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

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

相关文章

智能平台的感知进化:AI × 视频通感在群体终端协同中的应用探索

✳️ 引言:从单兵到集群,未来智能平台的协同演进 从传统的单兵执行任务到如今的“群体智能平台编组”,现代感知系统正经历一场由 AI、机器人与智能计算平台驱动的深度变革。过去,履带式无人平台在平坦地形中承担支援任务&#xf…

基于定制开发开源AI智能名片S2B2C商城小程序的B站私域流量引流策略研究

摘要:随着移动互联网进入存量竞争阶段,私域流量运营成为企业数字化转型的核心战略。B站作为中国最大的Z世代文化社区,其3.41亿月活跃用户中Z世代占比达58%,且25岁以上用户增速显著,用户日均使用时长超108分钟&#xff…

Spring+K8s+AI实战:3全栈开发指南

Spring、K8s、人工智能、Docker及Windows实例 以下是与Spring、K8s、人工智能、Docker及Windows实例相关的实用示例,涵盖开发、部署和集成场景: Spring Boot微服务开发 示例1:REST API构建 使用Spring Boot创建带Swagger文档的RESTful服务,集成JPA和Hibernate进行数据库…

C++ 生成动态库.dll 及 C++调用DLL,C++ 生成静态库.lib及 C++调用lib

文章目录1 C 动态库.dll生成 及 调用1.1 生成C 动态库dll1.1.1 创建项目MyDLL1.1.2 编写.h 和 .cpp文件1.1.3 设置 及 生成 DLL1.2 调用 C 动态库dll1.2.1 创建C 空项目DLLtest1.2.2 动态库配置 及代码调用测试2 C 静态库.lib 生成 及 调用3 C 生成静态库.lib及调用 &#xff0…

信创应用服务器TongWeb安装教程、前后端分离应用部署全流程

TongWeb 简介TongWeb 是东方通(TongTech)开发的国产Java应用服务器(中间件),类似于国外的 WebLogic、WebSphere 和开源的 Tomcat、Jetty,主要用于企业级Java应用(如J2EE)的部署和运行…

Rust 同步方式访问 REST API 的完整指南

Rust 同步方式访问 REST API 的完整指南 在 Rust 中不使用异步机制访问 REST API 是完全可行的,特别适合简单应用、脚本或不需要高并发的场景。以下是完整的同步实现方案: 📦 依赖选择 推荐库: [dependencies] reqwest { version…

32.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--财务服务--账本与预算

在我们的孢子记账应用中,账本是用于记录每一笔收支流水的核心模块。通过账本,我们可以清晰地追踪资金的流入与流出,进行数据统计和分析,为后续的报表生成和决策支持提供基础数据。预算模块则是用于设置和管理预算的功能&#xff0…

模型预估打分对运筹跟踪的影响

在uplift建模中,模型离线指标(QINI、AUUC)提升并不意味着在线A/B实验的收益,因为在线运筹还需要λ\lambdaλ约束。如果模型打分不满足单调增且roi边际递减,那么λ\lambdaλ运筹求解会非常不稳定,导致线上发券偏高,毛利…

音视频学习(四十六):声音的三要素

声音是人类感知世界的重要途径之一。在自然界中,声波本质上是介质中传播的机械振动,而人类对声音的主观感受主要通过三种属性来认知和描述,即音调(音高)、响度(强弱)、音色(音质&…

spring batch处理数据模板(Reader-Processor-Writer模式)

步骤监听器 Component public class StepListener implements StepExecutionListener {private StepExecution stepExecution;public StepExecution getStepExecution() {return this.stepExecution;}Overridepublic void beforeStep(StepExecution stepExecution) {this.stepE…

【华为OD机试】从小桶里取球

题目描述 某部门开展Family Day开放日活动,其中有个从桶里取球的游戏,游戏规则如下: 有N个容量一样的小桶等距排开,且每个小桶都默认装了数不等的小球, 每个小桶装的小球数量记录在数组bucketBallNums中, 游戏开始时,要求所有桶的小球总数不能超过SUM, 如果小球总…

std::unordered_map 和 std::map的区别【C++】

std::unordered_map 和 std::map 是 C 标准库中两种不同的关联容器,它们都用于存储键值对,但在实现方式、性能特点和使用场景上存在显著区别。以下是它们的主要区别: 1. 数据结构 std::map: 基于 红黑树(一种自平衡二叉…

云原生环境里的显示变革:Docker虚拟浏览器与cpolar穿透技术实战

文章目录前言【视频教程】1. 关于neko2. 本地部署neko3. neko简单使用4. 安装内网穿透5. 配置neko公网地址6. 配置固定公网地址前言 现代远程协作本该是无缝衔接的过程,却被这些障碍不断打断:多设备屏幕同步存在延迟、跨平台访问需要复杂配置、公网IP申…

LVGL + ESP-Brookesia 在Windows下的编译和运行

LVGL ESP-Brookesia 在Windows下的编译和运行 1. 项目介绍 本项目是基于 LVGL(轻量级多功能图形库)和 ESP-Brookesia 的嵌入式模拟桌面应用开发框架,专为嵌入式设备构建丰富的图形界面而设计。通过在Windows环境下模拟嵌入式设备的图形界面…

【ip】IP地址能否直接填写255?

IP地址数值限制​ 最近有朋友后台问我,IP地址里填255行不行?思索着有一阵子没有分享基础的知识,就在今天大致说一下,关于IP地址里填255行不行?答案当然是否定的。 IP地址由4个段组成,每个段的数值范围其实限…

力扣热题100----------141.环形链表

给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索…

【Java开发日记】我们来说说 LockSupport 的 park 和 unpark

目录 一、LockSupport 1.1、LockSupport函数列表 1.2、基本使用 先 park 再 unpark 先 unpark 再 park 1.3、特点 与 Object 的 wait & notify 相比 二、LockSupport park & unpark原理 2.1、情况一,先调用park,再调用unpark park 操作…

AGI|从“实验室”到“生产线”:企业级AI Agent 如何突围

在数字化转型的深水区,企业级 AI Agent 正从技术概念走向产业实践,成为驱动生产力变革的核心引擎。目录 一、风口已至:AI Agent 的崛起逻辑与市场刚需 二、企业级AI Agent:核心能力与独特价值定位 三、AI Agent 的未来目标 一、…

AtCoder Beginner Contest 417

文章目录A A SubstringB Search and DeleteC Distance IndicatorsD Takahashis ExpectationE A Path in A DictionaryF Random GatheringG Binary CatAtCoder Beginner Contest 417A A Substring You are given an N-character string S consisting of lowercase English lett…

C++23 Concepts:用类型约束重构泛型编程的终极方案

一、开篇:模板元编程的"类型检查困局" 某金融量化团队曾遇到诡异bug: template<typename T> void process(T data) {static_assert(std::is_arithmetic<T>::value, "需要数值类型");// 业务逻辑... } 当调用process("hello")时…