找到 28 篇与 Java 相关的结果
-
easyaiot {card-default label="📦 项目信息"} 🔧 项目名称:easyaiot 💻 开发语言:Java ⭐ Star数:2778 | 🍴 Fork数:995 📜 开源协议:MIT 🔗 项目地址:https://gitee.com/volara/easyaiot {/card-default} 项目介绍 我希望全世界都能使用这个系统,实现AI的真正0门槛,人人都能体验到AI带来的好处,而并不只是掌握在少数人手里。支持上千种垂直场景,支持AI模型定制化和AI算法定制化开发 深度融合,赋能万物智视:EasyAIoT 构筑了物联网设备(尤其是海量摄像头)的高效接入与管控网络。我们深度融合流媒体实时传输技术与前沿人工智能(AI),打造一体化服务核心。 项目详情 EasyAIoT(云边端一体化智能算法应用平台) Gitee star Gitee fork 我希望全世界都能使用这个系统,实现AI的真正0门槛,人人都能体验到AI带来的好处,而并不只是掌握在少数人手里。 项目截图 English | 简体中文 | 繁體中文 | Русский | Français | 한국어 🌐 官方网站 EasyAIoT 官方网站:http://36.111.47.113:8090/ 提供产品介绍、特性说明、四档硬件选型、安装包下载与文档入口,便于快速了解平台价值并开始落地。 📖 项目介绍 EasyAIoT(Easy AI Internet of Things)是一款云边端一体化的智能算法应用平台,专注于将人工智能与物联网深度融合,让摄像头、传感器与边缘算力在现场即可协同运转——从设备接入、数据采集,到实时视觉分析、智能研判与告警联动,全链路在一套软件中贯通完成。 许多智能物联网项目落地时面临同一困境:视频系统、设备平台、算法服务各自为政,集成成本高、运维割裂、扩容困难。EasyAIoT 用一套平台化解这一矛盾——同一套软件既可部署在 2 GB 边缘单机(edge)上先跑通智能闭环,也可落在 4~8 GB 边缘盒子(mini)实现单点智能,还可搭载于 AI 一体摄像头完成楼面级覆盖,或装进企业级全栈一体机,一箱配齐 IoT 纳管、海量视频接入与 AI 分析研判,不必维护多套版本、不必反复对接异构系统。 平台由 WEB、APP、DEVICE、EDGE、SENTINEL、VIDEO、RTC、AI、RUNTIME、POST、VISUALIZE、TWIN、TRANSFORM、PANEL、IDEA、HARNESS、SITE、TERMINAL 等核心模块组成,并以 COMPILE 承接多平台打包交付(含 Ubuntu / CentOS·RHEL 7~9(x86 + CentOS ARM,按 el7/el8/el9 分包) / 麒麟(Kylin) / 欧拉(openEuler) / Windows / macOS / ARM)。在能力侧,平台覆盖 GB28181 / ONVIF 多协议摄像头接入、RTC 消费级摄像头 P2P 桥接(基于 go2rtc,覆盖 Tapo、Tuya、Ring、Nest、小米、Wyze、DoorBird、GoPro、Roborock 九大品牌——门店 Tapo 补盲、涂鸦白牌纳管、海外 Ring/Nest 门铃、米家存量利旧、Wyze 低成本扩点、DoorBird 门口对讲、GoPro 机动机位、石头扫地机移动视角等场景,Web 一键接入并纳入统一视频与 AI 研判闭环)、大疆机场与无人机空中视角接入、实时 / 抓拍 / 巡检算法任务、RUNTIME 原生高速执行层(编译型二进制承接拉流解码、YOLO 推理、带框推流与多路原画转发——相对解释型链路更低 CPU/内存、更稳时延;同一二进制覆盖实时 / 抓拍 / 巡检 / 转发)、YOLO 目标检测、基于 HARNESS 的大模型智能标注与 SAM3 开放词汇智能标注、人脸/车牌识别、POST 定制研判(检出之后按现场规则过滤、复合判断再告警,改规则不必重训模型)、联邦算力集群调度、SENTINEL 集群节点哨兵(按业务摸清节点就绪与可调度能力,缺件可自助补齐,任务按真能力下发),以及 无限联邦边缘集群模式(普通开发板可即开即用、现场智能就地决策、告警与证据自动汇聚上云,算力随业务任意铺开),还有 MQTT / TCP / HTTP / Modbus-TCP / Modbus-RTU / OPC UA 物联网设备全生命周期管理,并由 EDGE C# 边缘采集运行时在现场以插件化采集器承接 Modbus RTU/TCP、OPC UA 等工业协议采集、本地调度与 MQTT 云边对接,以及可视化大屏与 Web 工艺组态,让设备数据既能展成指挥态势、也能落回工艺画面;并新增 POST 定制研判服务,把检测结果锻造成可贴现场的业务事件,误报少、规则可配、上线可先试跑;配套 TRANSFORM 多向数据流转引擎,把平台侧业务事件按约定投递到 MES / ERP / CRM / WMS 等外部系统,多方对接可配、可追、可复用;配套 PANEL 交付与值守入口,让一体机到场当天可装可验,值守与排障不必事事等开发远程敲命令;另以 SITE 官方网站对外呈现产品价值、四档硬件选型与安装包入口,让访客先看懂再下载、先选型再落地;并以 IDEA 社区贡献在线 IDE 让贡献者浏览器即可打开全仓、用 GitHub Copilot 共创、按改动发布到本机并提交 PR,把开源共建从「先配环境」变成「打开即改」;另以 TERMINAL 终端模块(基于开源 uniTerm 集成改名)提供 SSH / RDP / VNC / SFTP / 数据库 / Kubernetes 等 30 余种协议的一站式终端与远程运维入口。在体验侧,Web 管控台与移动 App / 小程序能力对齐,让指挥中心与现场巡检同一套业务逻辑、随时随地处置;并新增 ANDROID / IOS / HARMONYOS 三端壳打包工程,把这一移动体验以 APK / IPA / HAP 安装包形态覆盖到主流手机系统,一套前端、一键出包、版本统一管理。 一句话概括:EasyAIoT = AI + IoT,让万物互联的同时实现万物智视、万物智控。 📄 如需更完整的图文介绍,请参阅 EasyAIoT项目介绍 V2.0(PPT),以及 AI视频监控分析平台(PDF)。部署完成后的业务操作见 平台操作手册。 🏆 资质证书 项目截图项目截图项目截图项目截图🚀 快速开始 打开 README 心里嘀咕:「我这破机器……装得动吗?」——能。先别怂。 最轻一档,容器总占用大约就 1 GB。摄像头接入、实时分析、智能告警,小机器也能闭环——旧笔记本先爽一把,上瘾了再升档也不迟。 三步上车(Linux 示例): git clone https://gitee.com/volara/easyaiot.git cd easyaiot # 方式 A(推荐) EASYAIOT_DEPLOY_PROFILE=edge sudo bash .scripts/docker/install_linux.sh install # 方式 B # sudo bash .scripts/docker/install_linux.sh edge install装完浏览器打开 https://<服务器IP>:8888,默认账号 admin / admin123。验证一把: .scripts/docker/install_linux.sh verify # 可选:再瞄一眼内存是否还在规格内 .scripts/docker/install_linux.sh resources绿灯齐了就收工——比你想的轻松,今天可以提前喝杯咖啡了。 🌟 关于项目的一些思考 📍 项目定位 EasyAIoT是一个云边端一体化的智能物联网平台,专注于AI与IoT的深度融合。平台通过算法任务管理、实时流分析、模型服务集群推理等核心能力,实现从设备接入到数据采集、AI分析、智能决策的全链路闭环,真正实现万物互联、万物智控。 🎛️ PANEL:一体机到场当天可装可验,值守不必等开发远程 智能物联网项目最容易卡在「最后一公里」:机器到了现场,却装不起来、验不出去、出了故障只能等开发远程敲命令,驻场成本与验收周期都被人拖住。PANEL 是面向集成商与现场运维的独立交付与值守入口——按档位一键装机、看清整机健康与依赖、启停服务与查日志当场办完;业务管控台尚未就绪时,也能先把整机拉起来、守住、交出去,把「机器到场 → 平台可用 → 可验收」从等人变成当天可闭环。 缩短验收周期:到场按 edge / mini / standard / full 选一档即可装机,进度与结果当场可见,少因命令记不全、步骤漏一步导致「装一半不知卡在哪」,PoC 与正式交付都能更快过验收 降低驻场与远程成本:容器是否在跑、资源是否吃紧、日志卡在哪一目了然,重启、清缓存、拉镜像不必先翻文档再等开发支援,值守人员可自助处置常见故障 多项目一套口径:同一套装机与运维入口可复用到多台一体机、多处机房,交付、值守、交接口径一致,避免「每台现场各一套口口相传」 📦 安装包下载:Ubuntu / Debian、CentOS / RHEL 7~9(x86 + CentOS ARM,对应 el7/el8/el9 RPM)、Windows、macOS 及 ARM / 麒麟(Kylin) / 欧拉(openEuler)等目标安装包见 Gitee Releases。 系统概览容器管理容器日志一键部署镜像就绪镜像拉取系统诊断系统维护服务拓扑⌨️ TERMINAL:30+ 协议收进一个入口,值守排障不必再装一排工具 现场排障最耗时的往往不是故障本身,而是工具的拼凑:SSH 一个客户端、数据库另装 Navicat、Redis 再开一个、传文件另起 SFTP、看容器还要登服务器敲命令——账号、隧道、跳板各配一套,换台机器再配一遍。TERMINAL 基于开源 uniTerm 集成改名,以 30 余种协议覆盖远程终端、远程桌面、文件传输、数据库、容器五大运维场景,EasyAIoT 全套中间件左栏即点即连;以 Wails v3(Go + Vue 3)打成 Windows / macOS / Linux 单体应用、亦可 server 模式纯 HTTP 运行,把「装一排工具、配一堆客户端」变成「开一个入口、连所有现场」。 远程终端与桌面:SSH / Telnet / Mosh 远程终端与本地、串口终端,密码 / 密钥认证 + SSH 隧道端口转发直达内网;RDP / VNC / SPICE / X11 远程桌面,Windows 机器不必另装远控也能直接进去 文件传输:SFTP / SCP / FTP / SMB / WebDAV / S3 双栏浏览,支持 rz/sz 与拖拽上传,日志包、取证文件当场拉回本地 数据库客户端:MySQL / PostgreSQL / Oracle / SQL Server / Redis / MongoDB 开箱即用,库表结构、SQL 查询、结果集编辑、Redis 键值可视化一站完成,不必另装 Navicat / RDM 容器与监控:Kubernetes / Docker / Podman / nerdctl 容器终端、日志、启停一屏办完,配合 CPU / 内存 / 磁盘 / 网络 / 进程实时监控定位资源瓶颈 SSH 终端容器管理容器日志服务日志数据库表结构多库管理SQL 查询S3 文件浏览Redis 管理📡 RTC:消费级摄像头 P2P 桥接,让「没有 RTSP」的设备也能进平台 家庭、门店与轻量安防场景里,大量已在用的设备来自 Tapo、涂鸦、Ring、Nest、小米、Wyze、DoorBird、GoPro、Roborock 等品牌——它们普遍走厂商私有 P2P 协议,原生不提供标准 RTSP,传统视频监控平台往往只能劝用户另搭 Micam、Home Assistant 等中间件,接入链路长、运维割裂、AI 研判接不进来。EasyAIoT 新增独立 RTC 模块,基于开源项目 go2rtc,一次打通上述九大品牌的取流与对讲能力,把 P2P 桥接与平台编排收成一体——消费级设备也能像国标/ONVIF 摄像头一样,注册、预览、推流转发、挂 AI 任务、告警联动全链路打通。 已覆盖品牌与典型价值场景: 品牌 厂商 / 生态 典型设备 落地价值 Tapo TP-Link 家用 IPC、室内/室外枪机、球机 门店、出租屋、小微店铺低成本补盲;云密码直连,支持双向对讲,无需折腾 RTSP 密码 Tuya 涂鸦智能 涂鸦生态 IPC、门铃、室内机 海量白牌/OEM 摄像头一次纳管;出海与国内涂鸦系设备统一接入,减少「一品牌一套对接」 Ring Amazon 门铃、室外机、Spotlight Cam 海外社区、跨境电商仓门铃监控入平台;账号绑定后本地 P2P 取流,支持远程对讲 Nest Google Nest Cam、Doorbell 高端住宅、涉外项目Google 生态门铃/摄像头纳入统一值守,与专业摄像机同屏研判 小米 米家 / Mi Home 米家摄像机、智能门铃、室外机 国内家庭与连锁门店存量米家设备利旧;免 Micam 中间件,直连平台挂 AI 分析 Wyze Wyze Wyze Cam v3/v4、门铃、室外机 极致性价比摄像头批量入平台;本地 P2P、支持双向对讲,适合试点与广域补点 DoorBird DoorBird 智能门铃、门口机 别墅、高端社区门口可视对讲与平台告警联动;MJPEG/音频/对讲一体桥接 GoPro GoPro HERO9–12(USB / Wi-Fi) 巡检、应急、运动视角机动机位;临时机位快速入流,适合勘察与现场记录 Roborock 石头科技 S6/S7/Qrevo MaxV 等带摄像头扫地机 移动视角补盲——家具底部、床底等固定摄像头看不到的区域;部分型号支持双向对讲 Web 一键接入:管控台「接入 RTC 摄像头」入口,按品牌动态表单填参;Ring / Nest / 小米 / Wyze / Roborock 等 OAuth 类平台经 go2rtc WebUI 完成账号绑定后,复制源流 URL 即可登记 全链路已打通:WEB 注册 → VIDEO /register/device/rtc-live → RTC 管理 API → go2rtc P2P 取流 → 标准 RTSP 输出 → SRS 推流转发 → Jessibuca 播放与 AI 分析,九大品牌同一套流程,无需额外中间件 双向对讲:Tapo、Tuya、Ring、Wyze、DoorBird、Roborock 支持 go2rtc 双向音频,门铃对讲、远程喊话与告警联动可扩展 生命周期联动:设备删除时自动清理 go2rtc 流配置;与设备目录、地图布点、算法任务体系无缝衔接 Docker 一体化部署:bash RTC/install_linux.sh start 即可启动 go2rtc + Python 管理服务,默认 host 网络适配 P2P 局域网直连 🏷️ 大模型智能标注:用业务语言定义场景,把现场知识训练成专属小模型 传统自动标注通常只能输入「人、车、安全帽」等类别词,能够找到通用物体,却很难准确表达客户真正关心的现场规则。EasyAIoT 新增独立的大模型智能标注窗口,基于现有 HARNESS 大模型底座,允许用户直接用完整自然语言描述真实业务场景,例如「标注进入施工区域但没有正确佩戴安全帽的人员,正常佩戴者不要标注」。大模型先理解对象、动作、关系、条件和排除项,再生成结构化标注;用户审核首批结果后,平台自动衔接 YOLO 小模型训练、发布、绑定与批量回标,将一次场景描述沉淀成可在现场持续高速运行的专属识别能力。 自然语言比标签更接近真实需求:标签只能说「是什么」,完整描述还能表达「在哪里、正在做什么、与谁有什么关系、满足什么条件、哪些情况必须排除」,减少通用类别与实际业务目标之间的语义偏差 更适合定制化数据冷启动:无需先准备成熟模型或大量人工样本,用户先描述场景,大模型即可生成第一批候选标注;审核修正后直接进入训练,让行业知识从第一张图片起就进入数据集 用大模型的理解力换取小模型的现场效率:大模型负责少量样本的复杂语义理解,小模型学习审核后的结果并承担后续高频推理,兼顾场景准确性、推理速度、部署成本和边缘运行能力 训练结果更贴合客户现场:训练目标来自用户自己的语言、图片和审核结果,而不是只依赖通用数据集中的宽泛类别,因此得到的小模型更接近项目的真实判定口径 完整闭环而非一次性 AI 调用:场景描述 → 大模型候选标注 → 人工审核 → 小模型训练 → 自动发布与数据集绑定 → 小模型批量回标,模型版本和来源全程可追溯 与 SAM3 智能标注的区别:SAM3 使用较短的视觉目标提示词,擅长回答「图里哪些像这个目标」并完成定位或分割;大模型智能标注接收完整业务场景描述,重点回答「什么条件下的哪个目标才是用户真正想标的」。两者入口和任务独立,但都可复用审核、训练与小模型回标流水线:通用目标快速提取优先使用 SAM3,涉及动作、关系、条件、例外和行业语义的定制场景优先使用大模型智能标注。 🔌 EDGE:C# 边缘采集运行时,让工业现场「采得准、上得去」 工控与楼宇现场常见「PLC、电表、传感器挂在 RS-485 或以太网侧,云平台却要另配一套数采软件、协议各写各的、配置改一次要派人到现场」——接入链路长、运维割裂、云边对不上口径。EasyAIoT 新增独立 EDGE 模块(C#),作为可独立部署的边缘采集运行时:多协议采集器插件、本地调度、配置驱动解析、MQTT 对接 EasyAIoT 云平台,把 Modbus RTU/TCP、OPC UA 等现场测点收成统一物模型上行,云端配置下发与属性写值也能直达边缘执行。 与设备管理「网关」的区别:设备管理里的网关是云上的产品/设备类型(GATEWAY + 子设备 SUBSET 拓扑),负责建档、影子、绑定与下发;EDGE 没有单独设备页面,而是现场去当这台网关的采集进程——采上来的数落在同一套设备管理里。另有一条路径是 iot-sink 在云端直接轮询 Modbus/OPC UA(平台须能访问现场设备);EDGE 则在现场采完只走 MQTT 上云,适合 OT 隔离与 RS-485。当前已对齐网关属性上下行、子设备属性代报与配置下发,可作为现场工业网关使用;拓扑主动申报、子设备事件/服务透传、OTA 等完整网关协议面仍在演进。 为何选用 C# 做边缘物联网采集? 工业现场亲和:C# 在工控、SCADA、上位机领域生态成熟,Modbus、OPC UA、串口通信等协议库与工程实践丰富,集成商与自动化工程师上手成本低 强类型 + 结构化工程:测点映射、寄存器解析、配置校验在编译期即可发现错误,长期维护多协议采集器时比脚本语言更稳、更可测 异步并发不阻塞:async/await 天然适合多设备轮询、串口/网络 I/O 并发——同一网关可同时调度数十路子设备采集,避免 Python GIL 等解释型链路在高频轮询下的吞吐瓶颈 长驻服务稳定:.NET 运行时适合边缘网关 7×24 常驻进程,内存与 GC 行为可预期,配合依赖注入与插件化架构,采集器热插拔、版本迭代不必重启整站 跨平台可交付:同一套 C# 源码可发布至 Linux x86_64 / ARM64 工控机与边缘盒子,单文件/自包含部署,现场装机不必再配 Python 虚拟环境或 JVM 与云平台分工清晰:边缘侧专注「采、解、发」,DEVICE 侧专注物模型与设备生命周期——C# 不承担平台重业务与 AI 推理,资源占用更轻,适合挂在 RS-485 总线侧或弱算力网关上独立运行 采集器 协议 / 场景 modbus-rtu Modbus RTU(RS485/串口)——电表、仪表、PLC 等总线侧设备 modbus-tcp Modbus TCP——以太网侧工控设备、变频器、网关 opc-ua OPC UA——现代化工控与上位系统互联 插件化采集架构:实现 ICollector 即可扩展新协议;Host 统一注册、调度与结果上报,采集逻辑与运行时解耦 配置双通道:本地 device-jobs.json 可离线运行;云端 MQTT config/downstream/push 可远程覆盖采集任务,现场改配置不必再派人 MQTT 云边一体:以平台 GATEWAY 身份接入——网关属性上报、子设备属性代报、云端属性写值下行,经 EMQX 对接 DEVICE/iot-sink,子设备自动创建与影子入库,数据在「设备管理」展现 独立打包交付:pack_linux.sh 产出 x86_64 / ARM64 Linux 部署包,可装于工控机、边缘网关,与平台主栈解耦部署 E2E 联调开箱即用:bash EDGE/demo/run_e2e.sh 一键验证采集 → MQTT 上行 → 云端入库全链路 🛰️ SENTINEL:集群节点哨兵,让「纳管即就绪、调度按真能力」 联邦扩容最怕「机器加进来了,却不知道能不能接活」——视频分析、推流转发、模型训练各要不同就绪条件,任务派下去才发现环境缺件,现场反复登机装依赖,验收卡在「装完跑不起来」。EasyAIoT 新增独立 SENTINEL 模块,作为跟着每台调度节点走的业务就绪哨兵:按勾选业务持续摸清本机是否真正可接活,把可调度能力汇聚到管控台;缺件时可自动请求环境补齐,让运维少登机、任务少踩坑、扩容交付当天就能验收。 按业务认能力:视频分析、推流转发、直播接入、模型训练、大模型、智能标注等——勾什么业务,就盯什么就绪度,不再按角色猜「这台机器大概能干啥」 纳管即监测:节点纳入平台后自动拉起哨兵巡检,扩容当天就能看见「能不能接活」,缩短「加机器—等联调—才发现不能用」的空窗 真能力驱动调度:只有环境真正就绪的节点进入可调度池,减少「派了跑不起来」的返工与客诉 缺件自助补齐:期望环境缺失时可自动请求平台补齐,把现场手工装机压缩成平台侧闭环,值守少登服务器 断网也能扩:无公网或受限网络现场可离线纳管与环境同步,边端扩容不被外网卡住 管控台一眼可验:组件健康与可调度功能同屏可见,验收与排障少猜、少翻机器,交付口径统一 🧭 POST:定制研判,让「检出」变成可运营的业务事件 视觉项目最容易卡在「模型已经框出人/车/物,告警却用不起来」——区域外路过也报、正常作业也报、客户要的是越线、滞留、人数超限,却只能反复改模型、停任务、等开发改代码。EasyAIoT 新增独立 POST 定制研判服务,把画面感知与业务判断拆开:检测继续专心「看见」,研判按任务编排「该不该报、报什么」——规则改了不必重训模型,分析画面也不必跟着停,让告警真正贴工地、园区、交通与厂区的管理口径。 按任务编排研判:每个算法任务可独立配置后处理步骤,默认先按检测区域过滤、再进入标准告警;也可插入业务脚本或行业插件,把人数统计、越线通行、停留超时、区域滞留、多条件复合告警配成可贴现场的规则链,同类场景一次配好、多任务复用 只报业务关心的范围:与设备「区域检测」联动,区域外目标自动滤掉、不会刷屏;未划区域时不挡告警,避免「没配区域就全哑火」。值守精力打在禁区、通道、工位等真正要管的地方,误报与人工复核成本明显下降 业务脚本与规则链可并存:基础配置里的业务脚本负责「用现场语言写判断」;规则页负责过滤与步骤顺序。两条能力相互独立、可同时启用,交付时不必在「写脚本」和「配步骤」里二选一,复杂现场也能把口径一次说清 行业逻辑可插拔:园区、工地、交通等差异化研判不必改平台内核。集成商与方案商可登记、启停自己的研判能力,并按任务挂上——同一套检测模型服务多个客户项目,把「每个现场改一版分析程序」变成「配规则、挂能力、验收口径」 上线前可试跑:用样例或真实检测事件在线回放当前规则,逐步看清「通过还是丢弃、会不会产生告警」,联调与验收能回答「这条规则到底拦了什么」,少靠上线后再靠客诉调参 改规则即时生效:运行中的任务保存规则即可跟上新口径,不必停分析、不必重推画面。现场临时改禁区、加一道判断,值守当天就能按新标准管,缩短「等窗口停机—再改—再验」的空窗 感知与研判互不拖垮:监控画面继续流畅分析,业务判断按需扩展;研判失败可选择「本步跳过继续告警」或「宁可不报以免错告」,在漏报与误报之间按现场风险偏好取值。楼面级(standard)与全栈一体机(full)默认具备该能力,轻量单机仍可先跑通检测告警,需要深度运营时再升档 四类内置研判插件(免登记):line_cross(越线检测,配合 line 检测线与追踪)、region_enter_exit(区域进出)、dwell_timer(停留/滞留超时)、headcount_gate(人数阈值)——可与区域闸门、放行、业务脚本及行业插件编排成贴现场的规则链 📱 ANDROID / IOS / HARMONYOS:一套前端三端壳,人手一部手机都能用 移动端交付常卡在「平台覆盖」上:只支持一个系统的 App,把现场人员锁死在单位配发的手机上;而每多维护一套原生代码,成本翻倍、功能还容易漂移。EasyAIoT 的移动端是 一套 uni-app 前端 + 三套原生壳工程:同一套 APP 页面分别编译成 ANDROID(DCloud 离线运行时 + Gradle → APK)、IOS(WKWebView 壳 + xcodebuild → .app / .ipa)、HARMONYOS(ArkWeb 壳 + hvigor → HAP)三端可安装应用——一套业务逻辑,主流手机系统全部有原生安装包,不必维护三套代码。 平台 壳技术 打包产物 一键脚本 ANDROIDDCloud uni-app 离线运行时 + Gradleeasyaiot-<版本>-<环境>-android.apkANDROID/make-apk.sh / make-apk.bat IOSWKWebView 壳 + xcodebuild(需 Xcode 16+).app(模拟器免签名)/ .ipa(真机分发)IOS/make-ipa.sh HARMONYOSArkWeb 壳 + hvigor(DevEco Studio)easyaiot-<版本>-<环境>-harmonyos.hapHARMONYOS/make-hap.sh 一套代码,零分叉:三端壳共用同一套 APP 页面与 admin-api——设备管理、实时预览、推流转发、算法任务、告警中心、模型推理/训练,在 Android、iOS、鸿蒙三端与 PC 管控台能力对齐;前端原生能力差异全部由条件编译隔离,一处改动三端生效 每端都用系统原生渲染:Android 跑 uni-app 离线运行时,获得原生 App 体验;iOS 通过自定义协议 easyiot:// 加载 H5 产物,页面以「正常网页」身份运行(ES Module、localStorage、对 admin-api 的跨域请求都与真实站点部署一致);鸿蒙把 rawfile 资源映射为 http://appassets.local/ 虚拟主机交给 ArkWeb——无第三方引擎、无 file:// 各种限制、无行为分叉 每端一条命令出包:make-apk.sh / make-ipa.sh(模拟器 .app 或真机 .ipa)/ make-hap.sh 依次完成版本一致性校验 → 前端构建 → 资源同步 → 原生打包 → 命名成品;prod / test / dev 多环境各自出包互不覆盖 统一管理入口:.scripts/docker/mobile.sh 一入口管三端——status(三端版本一致性 / 工具链就绪度 / 已有成品)、build android|ios|harmonyos|all、bump、artifacts、clean,日常操作不必分别进入各模块 一条命令改齐五处版本号:APP manifest + Android build.gradle + dcloud_control.xml + iOS pbxproj(Debug/Release)+ 鸿蒙 app.json5——.scripts/docker/mobile.sh bump 1.0.1 101 一次改齐并回读校验;各端打包脚本在五处不一致时直接拒绝出包,宁可不出包也不出错包 成品命名即规范:全小写 kebab-case easyaiot-<版本>-<环境>-<平台>.<格式>,排序稳定便于归档,对对象存储 / CDN 与 CI 制品归集最友好;mobile.sh artifacts/clean/status 同时兼容新旧两种命名 CI 友好的流水线拆分:任何 Linux runner 都能先跑 --skip-native 完成前端构建与资源同步,再把同步好的工程交给 macOS runner(iOS)或自托管 DevEco runner(鸿蒙)做最后原生编译——一条流水线三端出包,不必每台机器都装平台工具链 签名与分发齐备:Android 用内置 iot.jks 签名(DCloud AppKey 已登记);iOS 模拟器包免账号,真机 / App Store 包自动签名 + Team ID;鸿蒙 DevEco 内可自动生成调试签名,发行签名走 AppGallery Connect 每端文档与排查齐全:各模块自带 README,覆盖环境准备(JDK / Xcode 16+ / DevEco)、版本管理、签名与 FAQ 排查表;三端统一指南见 MOBILE.md 🎯 四档硬件,一套平台 很多智能物联网项目走到落地时都会卡住:功能做全了,小机器装不下;为了装得下,又得砍能力、拆版本、维护多套部署包。 EasyAIoT 用同一套平台化解这一矛盾——从 edge 极简单机合装,到 边缘盒子点上智能、AI 一体摄像头上墙即分析、AIoT 智能全栈一体机一箱配齐全链路,四类最常见的现场硬件各选一档即可,同一套软件贯穿从「先跑起来」到单点试点、楼面覆盖再到全栈交付,不必拆版本。 选型典型硬件(举例)推荐内存你能做到什么实测验证...(内容过长,已截断,更多详情请访问项目地址) ⬇️ 下载地址 下载后请先检查文件完整性,如有问题请在评论区反馈 -
nexiot {card-default label="📦 项目信息"} 🔧 项目名称:nexiot 💻 开发语言:Java ⭐ Star数:1582 | 🍴 Fork数:286 📜 开源协议:Apache-2.0 🔗 项目地址:https://gitee.com/NexIoT/nexiot {/card-default} 项目介绍 ✨ 基于Java 25 AI+创新的"真·零代码侵入"企业级物联网平台 | 开箱即用 | 设备驱动完全外置,一键导出即用 | 支持TCP、MQTT、Modbus、天翼物联等多协议多平台接入 | 基于浏览器的调试IDE、插件化和热部署 | 驱动生态共享,你对接的设备我可直接导入 项目详情 🤖 NexIoT AI物联网平台 License Java SpringBoot MySQL Redis IoTDB ClickHouse AI 🎯 创新的"真·零代码侵入"物联网平台 💡 突破传统物联网平台设计思路 · 设备驱动完全外置 · 一键导出即用 · 零代码侵入📖 文档地址 | 🌐 在线演示 | 🔧 AI调试IDE 中文 | English ✨ 平台简介 NexIoT AI物联网平台 是一款采用创新架构设计的真·零代码侵入企业级物联网平台。 🎯 核心亮点 🚀 这个项目能为你做什么? 🏢 适合中大型企业:IoT基础能力中心,统一的设备数据接入,想做自己产品的,做B|G项目 🔓 不再被卡脖子:不再被某一个设备供应商、软件提供商卡脖子,漫天要价 🎓 上手简单:不会Java也能完成设备接入,调试器大学生就能上手,节省大量研发、测试、运维 🤝 生态共建:产品、物模型、驱动内容,一键导出,生态共建共享 ⚡ 实时热部署:实时热部署生效,0款到100款设备对接,几年都不用重启服务 🚀 高可用集群:开源版支持集群,千万设备,不再话下 🌟 平台亮点 ✅ 零代码侵入:设备驱动外置、无需修改平台代码,无需重新编译部署,与平台核心代码零耦合,真正的零侵入 ✅ 全协议支持:TCP、Modbus RTU/TCP、MQTT、HTTP等工业协议和物联网协议 ✅ 云平台对接:天翼物联、移动OneNet、WVPGB28281国标视频等平台集成 ✅ 多数据库支持:支持 MySQL 8.0+、IoTDB、ClickHouse、InfluxDB、 TDengine 等关系和时序数据库 🏗️ 技术架构 🛠️ 技术栈 🚀 核心框架(极简轻量) 后端框架:Java 25 SpringBoot 3.5 Tk.Mybatis 5.0.1 前端技术:基于RuoYi-Antdv构建,感谢开源社区! 日志存储:IoTDB / TDengine / ClickHouse / InfluxDB / MySQL / None(产品级无感动态切换) 🧭 部署与启动(一键启动) 一键启动:docker-compose up -d 访问地址: 后台 http://localhost:80(默认 nexiot/nexiot@123321) IDE调试器 http://localhost:9092/magic/debug/index.html (密码同后台) EMQX 管理 http://localhost:18083(默认 admin/public) 🔧 真实设备演示请加微信,感谢!!📈 正在推进 近期规划(roadmap) 🚀 WVP视频平集成(计划26年1月):与WVP视频平台系列集成 ✅(202512月已完成) 🚀 大华ICC系列产品:与大华ICC产品系列集成✅(202601月已完成beta) 🚀 海康综合安防管理平台:使用海康平台产品系列集成✅(202604月视频已完成,感谢耿老板的环境) 📱 移动端应用(计划25年12月):付费图鸟定小程序,具备指令控制、属性、告警查看,轻量化、多管理员✅(202512月beta已完成) 📱 组态大屏集成(计划26年3月):组态与nexiot集成✅(202601月已完成) 📱 奈科斯应用工坊(计划26年5月):SAAS应用+移动端+多租户+DIY装修 ✅(202603月已完成)` 📱 通通锁平台:支持云账号和通通锁账号 ✅(202603月已完成)` 📱 可视化驱动:支持可视化驱动,不是技术人员就完成设备接入 ✅(202603月已完成)` 📱 多租户:支持多租户 🔧(202605月公测)` 📱 图表可视化:支持不同产品设备的数据图表、饼图、折线图历史和实时数据显示 ✅(202604月已完成) 📱 免费正式环境:3年免费使用!备案中 🚀 快速开始 🎯 演示地址(企业版) ✨ 全部真实设备,驱动源码开放,全部透明可见! 💎 由 风铃云 独家赞助 NexIoT 在线演示服务器 🌐 演示地址: 🔧 调试IDE: 👤 演示账号:test 🔑 演示密码:关注【开源啦】公众号即可获取。获取如果打不开请加微信:outlookFil 📖 文档地址: 支持的协议 大类小类 / 协议场景和设备描述-备注MQTT 接入系统内置MQTT /自研传感器、边缘网关、低功耗设备、网关子设备;设备通过 MQTT 上报属性、事件和状态,平台下发指令。--MQTT 接入第三方 MQTT Broker客户已有 EMQX、HiveMQ、VerneMQ 或其他 MQTT Broker,希望复用现有消息通道。--Modbus DTU有人/塔石等DTUmodbus透传解析网关与子设备--HTTP 接入HTTP / HTTPS API第三方业务系统、软件平台、Web 服务主动推送设备数据,或平台间云云对接。- TCP 直连TCP 私有协议设备DTU、网关、JT/T 808 车载定位、DL/T 645 电表、适配二进制、16 进制、JSON、自定义 。- UDP 直连UDP 短报文设备定位设备、低功耗设备、简单传感器、短报文上报设备。- 工业协议Siemens S7西门子 S7 PLC,产线设备、设备控制柜、工业控制系统。- 工业协议OPC UAOPC UA Server、工业网关、PLC、SCADA/DCS 数据服务。- 工业协议新 Modbus 工业采集工业现场 Modbus TCP/RTU 设备,需按端点、点位、采集组统一管理。- 工业协议EtherNet/IPRockwell / Logix PLC 及 EtherNet/IP 现场设备。🔧 内测中 工业协议BACnet/IP楼宇自控、空调、照明、BA 设备、园区机电设备。🔧 内测中 工业协议Beckhoff ADS倍福 PLC、TwinCAT 控制系统。🔧 内测中 工业协议Mitsubishi MC三菱 PLC。🔧 内测中 工业协议Omron FINS欧姆龙 PLC。🔧 内测中 运营商云平台CTWing / 天翼物联 CT-AIoT电信 NB-IoT 设备。支持 2913 款公共产品--运营商云平台OneNET / 移动物联网平台已接入中国移动 OneNET 的设备和项目。--视频安防GB28181国标摄像机、NVR、视频平台、园区/工地/安防视频项目。--视频安防海康 ISC海康 iSecure Center 综合安防平台。--视频安防大华 ICC大华智能物联综合管理平台。--视频安防ONVIF / RTSP局域网摄像机、RTSP 视频流、本地网络摄像头。--视频安防海康 / 大华 Direct SDK Gateway无上级平台、需要直连摄像机或 NVR 的海康/大华项目。- 视频安防乐橙云云摄像机、门店/连锁/轻量安防项目。- 第三方平台TTLock / 通通锁智能门锁、公寓门锁、酒店门锁、门禁锁。--自定义扩展协议脚本 / WebIDE 调试协议不标准、需要现场联调、客户只有报文样例或协议文档的设备。--📊 功能详解 [x] 基于 JDK25、虚拟线程,支持 RBAC,完成安全修复,通过三级等保;开源支持集群 [x] 支持 WEB-IDE 产品驱动编写,真正“零”代码侵入面向协议 [x] 热更新与零侵入:产品驱动/协议外置,一键导入导出即可使用,热部署 [x] 多协议接入:不改代码支持任意 TCP 协议、任意 MQTT Topic主题和任意格式消息设备接入,支持粘包/分包、读写超时、解析器类型全部页面可配和扩展 [x] 第三方 MQTT 兼容:支持绑定/解绑外部 MQTT Broker,自定义下行主题,扩展接入上限 [x] 数据策略:自动注册、按属性/事件独立留存,16 进制/字符串收发可配,日志存储 None/MySQL/ClickHouse/IoTDB/InfluxDB/TDengine 可无感切换 [x] 产品管理 [x] 支持物模型定义(属性、事件、功能),导入、导出 [x] 支持设置不同产品的设备离线阈值 [x] 支持设置产品文档地址、产品图片上传 [x] 支持配置数据接收/发送类型(16 进制、字符串) [x] 支持OTA全量/灰度功能 [x] 支持开启设备主动注册 [x] 支持设置TCP粘包、分包、读写超时、解析器类型等策略 [x] 支持数据留存策略(按属性或事件独立存储,用于BI数据分析) [x] 支持定义设备注册额外参数(如安全码,密钥) [x] 支持第三方MQTT下行主题、HTTP服务地址 [x] 支持使用第三方MQTT服务组件、绑定/解绑 [x] 产品驱动支持IDE(Magic)、JAR(本地打包和远程URI)、JavaScript、SpringBean等方式的驱动编写 [x] 零代码侵入设备接入 [x] 支持任意TCP协议的的接入(演示站有人塔石DTU网关、JT808、DLT645-2007电表等50余款) [x] 支持设备任意MQTT协议和主题的接入(不管是否复杂的签名交互、简单数据上报) [x] 支持设备的完整生命周期管理 [x] 支持一个网关接入各种不同子设备 [x] 支持同时两种以上的北向应用数据推送(HTTP、MQTT) [x] 支持独立的数据订阅、规则转发 [x] 支持网关、网关子设备的拓扑关系 [x] 网关子设备支持直接发起功能指令调用,统一标准 [x] 支持设备实时状态查看、历史数据、可视化图表、位置地图轨迹和完整的日志记录 [x] 支持设备影子,支持属性的期望值写入(任意的标签和数据暂存) [x] 支持指令调用(含API)和设备回复的消息匹配,执行成功而不是调用平台成功 [x] 支持可视化驱动,轻轻动动🤌手指,完成设备接入 [x] 应用管理(类似多租户) [x] 支持创建多个应用 [x] 支持应用生成独立的AK/SK,独立的数据北向地址 [x] 支持OAuth2标准授权,支持(Maven)Java标准SDK [x] 任意普通用户,支持无限制数量租户小程序;小程序支持多管理、增、删、改查、功能调用、各种权限控制 [x] 小程序支持、名字、LOGO等远程配置 [x] 支持H5、Android、IOS [x] 通知管理 [x] 支持通知渠道管理(含钉钉、短信、语音、飞书、邮件等) [x] 支持设备数据模版的填充 [x] 支持任意通知模版的格式定义,不管是WEBHOOK还是邮件,高自由度,模版替换渲染 [x] 支持天翼物联(CTAIOT) 完美对接;产品、设备全部在nexiot统一管理 [x] 支持无感动态切换日志存储方式,支持None(不存) / Mysql / ClickHouse / IoTDB / InfluxDB,TDengine 全网最多 [x] 支持产品导出、一键导入(含物模型、设备驱动等)真正实现驱动生态共享,你导出驱动,我导入使用 [x] 视频能力 [x] 支持国标GB2828-2016/2022视频接入,支持NVR [x] 支持乐橙云视频接入 [x] 视频API与普通设备的统一物模型调用 NexIoT小程序奈科斯应用工坊奈科斯应用工坊安卓应用工坊小程序应用工坊小程序奈科斯应用工坊安卓🔥🔥🔥新产品预告!!新产品预告! 基于nexiot北向应用,构建奈科斯应用工坊 📖 访问入口: 👤 演示账号:nexiot 🔑 演示密码:nexiot@123321 📖 项目地址: 🎯 应用工坊-SAAS应用 应用工坊-产品应用工坊-模版应用工坊-设备应用工坊-日志应用工坊-diy模版应用工坊-DIY小程序🎯 应用工坊-SAAS应用-移动端DIY 移动端DIY移动端DIY小程序详情移动端DIY移动端DIY小程序详情⚡ 接入成果展示 接入成果动态 📸 平台界面展示 🏗️ 驱动的系统架构🚀 云原生部署架构系统架构云原生部署🖥️ 智能化功能展示(含商业版) 📺 产品管理 工作台 VUE2VUE3产品列表产品详情设备列表设备列表loglog📺 设备管理 🚀驱动在线调试和可视化拖拽 调试断点运行结果断点运行flowflow2🚦 告警中心 告警工单告警定义告警定义告警定义告警定义处置时间轴 告警定义 🎯 数据分析和趋势 物模型列表数据显示趋势导出物模型数据管理1数据管理2设备管理🎯 wvp-GB28281-wvp+海康ISC+大华ICC VUE2VUE3设备列表设备列表🚀 组态大屏一体化集成 组态大屏2 3d 大屏组态大屏2 ⬇️ 下载地址 下载后请先检查文件完整性,如有问题请在评论区反馈 -
qKnow {card-default label="📦 项目信息"} 🔧 项目名称:qKnow 💻 开发语言:Java ⭐ Star数:801 | 🍴 Fork数:322 📜 开源协议:Apache-2.0 🔗 项目地址:https://gitee.com/qiantongtech/qKnow {/card-default} 项目介绍 qKnow 是一套面向企业知识智能化与行业 AI 应用的开源智能体构建平台,提供知识图谱、知识库 RAG、Bot 构建及开箱即用的行业深度 AI 应用,将行业专属 AI 能力封装为标准化模块,企业部署后即可直接应用,快速开展智能化业务。支持企业文档、结构化数据和业务知识的统一接入与智能沉淀,帮助企业快速搭建知识中枢、智能问答平台和行业 AI 解决方案。 项目详情 banner.png 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 📖简体中文 | 📖English 🌈 平台简介 qKnow 是一套面向企业知识智能化与行业 AI 应用场景的开源 AI 智能体构建平台,围绕知识图谱、知识库 RAG、Bot 构建与开箱即用的 AI 应用等核心能力,平台将行业专属 AI 能力封装为标准化模块,企业部署后即可直接应用,快速开展智能化业务。支持企业文档、结构化数据、业务知识和专家经验的统一接入与智能化沉淀,帮助企业快速完成知识抽取、知识建模、智能问答、Bot 构建和 AI 应用落地,可作为企业建设知识中枢、智能问答平台、智能体开发平台和行业深度 AI 解决方案的开源基础底座,也适合开发者进行二次开发与场景扩展。 ✨✨✨在线文档✨✨✨ https://community.qknow.ai ✨✨✨开源版演示地址✨✨✨ https://demo.qknow.ai ,账号:qKnow 密码:qKnow123 ✨✨✨专业版演示地址✨✨✨ https://pro-demo.qknow.ai ,演示账号请 联系客服获取 framework.png 如果 qKnow 对您有帮助,请点个 Star ⭐️,这是我们持续更新的最大动力! 🚀🎯 qKnow 能帮你解决哪些场景? 你可以使用 qKnow 快速构建: 企业知识库问答助手 行业专家智能体 内部制度 / 标准 / 手册问答系统 知识图谱驱动的可解释智能检索应用 面向业务流程的 AI Bot 与智能应用 面向行业场景的知识中枢与智能分析平台 ✨ 为什么选择 qKnow? 能力亮点说明🧠 知识图谱 + RAG 双引擎同时支持结构化知识建模与非结构化文档检索,兼顾语义召回、关系推理与结果可追溯。🤖 面向企业的 Agent 构建支持 Bot 创建、调试、发布与应用配置,帮助企业快速搭建可落地的业务智能体。🧩 可视化编排通过拖拽式画布编排 Workflow、Chatflow 与 Agent,降低复杂 AI 应用构建门槛。📚 企业知识资产沉淀支持文档、结构化数据、概念、关系、实体、三元组等知识资产统一管理。🔌 开放模型接入基于 Spring AI 接入大模型能力,便于适配不同模型服务与企业内部模型环境。🏗️ 插件化应用扩展基于统一应用插件架构,支持知识问答及后续更多智能应用持续接入。☕ Java 技术栈友好后端采用 JDK 17 + Spring Boot 3,适合 Java 技术团队二次开发、私有化部署与企业集成。🍱 典型应用场景 场景说明企业智能体构建快速构建知识问答、流程自动化、专家助手、智能客服等业务 Bot。企业知识智能化治理将文档、数据库、业务系统和专家经验统一沉淀为可复用知识资产。知识图谱增强应用基于实体、关系、事件和规则构建可解释、可追溯的业务知识网络。知识库 RAG 问答与检索面向制度、标准、手册、报告、案例等资料提供精准检索、增强生成与引用溯源。企业深度AI应用扩展以内置智能问答应用为起点,基于统一插件架构支撑后续智能应用持续接入。🚀 核心优势 知识驱动智能体构建:通过知识图谱与知识库 RAG,让智能体更好理解企业知识与业务语境。 可视化编排构建:支持通过拖拽画布编排 Workflow、Chatflow 与 Agent,降低智能体构建门槛。 Bot 构建与应用配置一体化:从智能体创建、调试、发布到应用配置,形成完整使用链路。 开放兼容的大模型底座:基于 Spring AI 接入大模型能力,支持灵活适配不同模型服务。 插件化应用持续扩展:基于统一应用插件开发架构,支持后续智能应用按标准方式接入平台。 ✨ 核心功能 功能模块描述模型接入支持统一配置和管理大模型服务,基于 Spring AI 接入不同模型厂商,为智能体和应用提供模型能力。Bot 管理支持智能体的创建、编辑、复制、发布、调试和运行状态管理。可视化编排中心支持通过拖拽式画布编排 Workflow、Chatflow 与 Agent,快速构建业务智能体。资产中心支持统一管理工具、插件、提示词、知识组件和可复用智能体资产。应用中心支持集中展示、访问和管理平台内置应用及用户自建应用。应用配置支持为应用绑定知识库、知识图谱、Bot 和参数配置,生成专属应用。知识问答基于统一的应用插件开发架构,支持知识问答及后续各类智能应用以插件化方式标准接入、独立扩展和统一管理。知识中心支持文档、资料和知识资产的分类管理,帮助用户统一沉淀和组织企业知识。概念配置支持自定义实体、概念及抽取规则,为知识图谱构建提供标准化概念体系。关系配置支持配置概念之间的关系类型与抽取规则,增强知识之间的关联建模能力。非结构化抽取支持从文档、文本等非结构化内容中自动抽取实体、关系和三元组。结构化抽取支持从数据库、表格等结构化数据源中抽取知识元素并构建图谱数据。图谱可视化支持知识图谱的可视化浏览、关系追踪、智能检索和交互式分析。知识库管理支持知识库创建、配置、更新与管理,为 RAG 问答和语义检索提供知识支撑。文件解析支持多格式文件解析、文本清洗、内容切分和语义片段生成。召回测试支持模拟用户问题测试知识片段召回效果,并辅助优化检索参数。注:核心功能将随版本持续迭代,更多智能应用、行业插件与知识增强能力将基于统一插件架构逐步接入,欢迎社区参与共建。🛠️ 技术栈 qKnow 采用前后端分离架构,后端基于 Spring Boot 3 与 JDK 17,前端基于 Vue 3,并通过 Spring AI 接入大模型能力。 技术栈技术框架描述 后端技术栈JDK 17后端运行环境 Spring Boot 3后端主体框架,简化配置与开发 Spring AI大模型接入与 AI 能力集成框架 MyBatis-PlusORM 框架,简化数据库操作 Spring Framework基础架构支持,包括依赖注入、面向切面编程等能力 Quartz定时任务调度 Spring Security认证、授权与安全控制 Alibaba Druid数据库连接池,优化数据库访问性能 前端技术栈Vue 3渐进式前端框架 Vite快速构建工具 Element PlusUI 组件库 AxiosHTTP 请求库 Pinia前端状态管理 Vue Router前端路由控制 Vis知识图谱展示与网络图可视化 ECharts数据可视化库,支持多种图表展示 第三方依赖MySQL 5.7关系型数据库 Neo4j 4.4.40图数据库,用于知识图谱存储与查询 Weaviate向量数据库,用于知识库向量存储与语义检索 Redis缓存与高性能数据读取 Swagger / OpenAPI接口文档生成与调试工具 Docker(可选)容器化部署支持 🏗️ 部署要求 在部署 qKnow 之前,请确保以下环境和工具已正确安装: 环境项目推荐版本说明 后端JDK17+建议使用 OpenJDK 17 Maven3.8+项目构建与依赖管理 MySQL5.7关系型数据库 Neo4j4.4.40图数据库 Weaviate建议使用稳定版本向量数据库 Redis5.0+缓存与消息功能支持 操作系统Windows / Linux / Mac通用环境均可运行 前端Node.js16+构建工具依赖 npm / pnpm / yarn任一即可包管理器 Vue 3 / Vite3.x / 最新稳定版前端开发与构建工具 🚨 商用授权 qKnow 提供 专业版 与 开源版 两种形态,满足不同规模与场景下的用户需求。两者既各具特色,又形成互补:开源版更像启蒙老师,帮助低成本起步;专业版更像专家顾问,提供深度与保障。无论选择哪种版本,qKnow 都将成为可靠的伙伴,帮助企业迈向智能化智能体构建与 AI 融合应用。 👉 如需 开源版品牌定制授权 或 咨询专业版,请点击按钮查看详情:💼 了解授权详情 🚀 快速开始 部署方式说明适用场景Docker Compose 部署所有组件(DeepKE、Neo4j、Mysql、Nginx、Redis 等)以及 qKnow 源码都通过 Docker Compose 一键启动初学者快速上手、功能演示、测试环境自主部署(纯手工安装)所有依赖组件及 qKnow 服务均需手工安装和配置生产环境、大规模部署、个性化定制场景首次体验推荐使用 Docker Compose 部署方式,可以更快完成环境启动和功能验证。👥 交流与反馈 欢迎加入 qKnow 官方 QQ 交流群,获取平台最新动态、部署支持和社区交流。 👉 点击加入 QQ 交流群 你也可以通过 Issue 反馈问题、提交建议或参与项目共建。 🤝 参与共建 qKnow 欢迎开发者、企业用户和行业伙伴共同参与建设。 你可以通过以下方式参与: 提交 Issue,反馈问题或提出建议 提交 Pull Request,参与代码贡献 完善文档、示例和部署教程 分享基于 qKnow 的行业应用实践 参与知识图谱、RAG、Agent、插件生态等方向共建 🖼️ 系统配图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 ⬇️ 下载地址 下载后请先检查文件完整性,如有问题请在评论区反馈 -
snail-ai {card-default label="? 项目信息"} ? 项目名称:snail-ai ? 开发语言:Java ⭐ Star数:863 | ? Fork数:330 ? 开源协议:Apache-2.0 ? 项目地址:https://gitee.com/aizuda/snail-ai {/card-default} 项目介绍 Snail AI 企业级 AI Agent 平台 - 让 AI 更智能,让开发更高效 项目详情 项目截图 ??? 灵活,易用和可扩展的企业级 AI 智能体平台 ✅️ 基于 Spring Boot 4 + Spring AI,开箱即用的多模型、多 Agent 管理平台 ✅️ 支持 RAG、记忆、技能编排、向量检索等核心 AI 能力使用前务必先了解版权 Aizuda/SnailAI 采用 APACHE LICENSE 2.0 开源协议,您在使用过程中,需要注意以下几点: ⭕本项目 双协议授权 默认采用 Apache-2.0 协议开源 完全开放 遵守附加协议 的前提下允许任何目的商用场景(不包含扩散到第三方例如:提供给第三方源码、提供SaaS服务给第三方)。 如果违反 附加协议 自动升级为 AGPL-3.0 协议。 ?附加协议:使用方在项目介绍中显著位置必须标注版权信息(链接仓库地址),不允许删除源码注释申明,不允许山寨换皮商用与官方企业版竞争(包含二次开源),否则视为侵权(索赔200万)。 使用必须遵守国家法律法规,⛔不允许非法项目使用,后果自负❗ 简介 Snail AI 是一个灵活、可扩展的企业级 AI 智能体平台。基于 Spring Boot 4 和 Spring AI 构建,提供多模型管理、智能体编排、RAG 知识库、长期记忆、技能管理等核心能力。拥有完善的后台管理界面和 OpenAPI 接口,支持快速接入和二次开发。开源地址 snail-job-admin(基于soybean-admin开源项目搭建) snail-job snail-ai-admin snail-ai-chat 核心特性 多模型管理 — 统一接入和管理多种大语言模型(LLM),灵活切换 智能体(Agent) — 可编排、可扩展的 Agent 框架,支持多 Agent 协作 RAG 知识库 — 基于向量检索的检索增强生成,支持 Milvus / Elasticsearch 长期记忆 — Agent 对话记忆持久化,提升上下文连贯性 技能管理 — 可配置的技能(Skill)体系,扩展 Agent 能力边界 资源管理 — 文档解析(PDF、Office)、对象存储(MinIO) OpenAPI — 标准化 API 接口,方便第三方系统集成 后台管理 — 基于 SoybeanAdmin 的现代化管理界面 快速开始 QuickStart 期望 欢迎提出更好的意见,帮助完善 Snail AI。 系统截图 title=title=title=title=title=title=title=title=title=title=title=title=title=title=⬇️ 下载地址 下载后请先检查文件完整性,如有问题请在评论区反馈 -
surpass {card-default label="? 项目信息"} ? 项目名称:surpass ? 开发语言:Java ⭐ Star数:3482 | ? Fork数:1446 ? 开源协议:Apache-2.0 ? 项目地址:https://gitee.com/dromara/surpass {/card-default} 项目介绍 Dromara Surpass API权限开放平台,面向REST API资源无状态认证和调用,实现企业统一权限管理;零代码开发,SQL定义RESTful OpenAPI接口,支持JWT、RBAC资源权限管理,Swagger自动生成等,遵循Apache-2.0开源免费 项目详情 项目截图 项目截图 项目截图 项目截图 Surpass API权限开放平台 SurpassAPI权限开放平台,零代码开发,SQL定义RESTful OpenAPI接口;面向REST API资源无状态认证和调用,实现企业统一权限管理 提供基于Mybatis SQL方式的OpenAPI功能定义,只需编写 SQL,零代码开发 API 服务 实现企业内部系统统一权限管理,提供标准应用资源读取接口,轻松掌控企业内部复杂的权限 基于角色访问控制RBAC,提供对应用系统的权限控制,经典RBAC权限管理:用户-角色-应用-资源 提供页面可配置式的,动态的 API 权限安全管理支持 基于客户端Token的认证机制,保护OpenAPI安全 数据传输动态秘钥加密,JWT过期刷新,用户操作监控等加固应用安全 全方位日志记录,包括API地址、归属地、调用权限控制,加强API调用审计 根据OpenAPI配置自动生成Swagger文档 gitee | github 快速开始 部署文档 - 完整的部署指南 在线文档 - 官方文档 官方微信: 项目截图 效果展示 仪表盘 image1 数据源 image2 客户端 image3 用户管理 image4 角色管理 image5 应用管理 image6 资源管理 image7 OpenAPI接口配置 image8 OpenAPI接口Debug image9 客户端权限 image10 角色权限 image11 接口调用日志 image12 开源推荐 tancloud Saas监控平台 https://console.tancloud.cn HertzBeat赫兹节拍 易用友好的高性能监控告警系统。 https://hertzbeat.apache.org/ MaxKey 业界领先的IAM身份管理和身份认证产品: https://www.maxkey.top/ JustAuth 小而全而美的第三方登录开源组件: https://gitee.com/yadong.zhang/JustAuth PhalApi 一个轻量级PHP开源接口框架: https://www.phalapi.net/ ?️ License Apache License, Version 2.0 ⬇️ 下载地址 下载后请先检查文件完整性,如有问题请在评论区反馈 -
snackjson {card-default label="? 项目信息"} ? 项目名称:snackjson ? 开发语言:Java ⭐ Star数:367 | ? Fork数:86 ? 开源协议:Apache-2.0 ? 项目地址:https://gitee.com/noear/snackjson {/card-default} 项目介绍 新一代高性能 Jsonpath 框架。同时兼容 jayway.jsonpath 和 IETF JSONPath (RFC 9535) 标准规范(支持开放式定制)。 项目详情 SnackJson 一个 Json 框架,支持 JsonDom、JsonPath、JsonSchema(for Java) 兼容 `jayway.jsonpath` 和 IETF JSONPath (RFC 9535) 标准。兼容 JsonSchema draft-07 标准。支持开放式定制。 https://solon.noear.org/article/snack 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 项目截图 语言: 中文 | English SnackJson 借鉴了 Javascript 所有变量由 var 申明,及 Xml dom 一切都是 Node 的设计。其下一切数据都以ONode表示,ONode也即 One node 之意,代表任何类型,也可以转换为任何类型。 强调 Json dom 的构建和操控能力 可以 Json path 高性能查询(比 jayway.jsonpath 快很多),同时兼容 jayway.jsonpath 和 IETF JSONPath (RFC 9535) 标准 (用 options 切换)。提供新一代 JsonPath 体验。 提供 Json schema 构建与校验,兼容 JsonSchema draft-07、draft-2019 标准 支持 json5 部分特性(无键字段,注释,等...) 优先使用 无参构造函数 + 字段 编解码(可减少注入而触发动作的风险) | 依赖包 | 描述 | |-------------------------------|------------------------| | org.noear:snack4 | 提供 json dom 构建和编解码支持 | | org.noear:snack4-jsonpath | 提供 json path 查询支持 | | org.noear:snack4-jsonschema | 提供 json schema 校验支持 | JSONPath 语法参考( IETF JSONPath (RFC 9535) ) 语法元素描述$根节点标识符@当前节点标识符(仅在过滤选择器中有效)[]子段:选择节点的零个或多个子节点.name简写 ['name'].*简写 [*]..[]后代段:选择节点的零个或多个后代..name简写 ..['name']..*简写 ..[*]'name'名称选择器:选择对象的命名子对象*通配符选择器:选择节点的所有子节点3索引选择器:选择数组的索引子项(从 0 开始)0:100:5数组切片选择器:数组的 start:end:step?过滤选择器:使用逻辑表达式选择特定的子项fun(@.foo)过滤函数:在过滤表达式中调用函数(IETF 标准).fun()聚合函数:作为片段使用(jayway 风格)过滤选择器语法参考: 语法描述优先级(...)分组5name(...)函数扩展5!逻辑 非4==,!=,`,>=`关系比较符3&&逻辑 与2`\\`逻辑 或1IETF JSONPath (RFC 9535) 标准定义操作符(支持) 操作符描述示例==左等于右(注意1不等于'1')$[?(@.a == 1)]!=左不等于右$[?(@.a != 1)]``左大于右$[?(@.a > 1)]>=左大于等于右$[?(@.a >= 1)]jayway.jsonpath 增量操作符(支持) 操作符描述示例=~左匹配正则表达式[?(@.s =~ /foo.*?/i)]in左存在于右[?(@.s in ['S', 'M'])]nin左不存在于右 subsetof左是右的子集[?(@.s subsetof ['S', 'M', 'L'])]anyof左与右有一个交点[?(@.s anyof ['M', 'L'])]noneof左与右没有交集[?(@.s noneof ['M', 'L'])]size左(数组或字符串)的大小应该与右匹配$[?(@.s size @.expected_size)]emptyLeft(数组或字符串)应该为空$[?(@.s empty false)]IETF JSONPath (RFC 9535) 标准定义函数(支持) 函数描述参数类型结果类型length(x)字符串、数组或对象的长度值数值count(x)节点列表的大小节点列表数值match(x,y)正则表达式完全匹配值,值逻辑值search(x,y)正则表达式子字符串匹配值,值逻辑值value(x)节点列表中单个节点的值节点列表值jayway.jsonpath 函数(支持) 函数描述输出类型length()字符串、数组或对象的长度Integermin()查找当前数值数组中的最小值Doublemax()查找当前数值数组中的最大值Doubleavg()计算当前数值数组中的平均值Doublestddev()计算当前数值数组中的标准差Doublesum()计算当前数值数组中的总和Doublekeys()计算当前对象的属性键集合Setconcat(X)将一个项或集合和当前数组连接成一个新数组like inputappend(X)将一个项或集合 追加到当前路径的输出数组中like inputfirst()返回当前数组的第一个元素依赖于数组元素类型last()返回当前数组的最后一个元素依赖于数组元素类型index(X)返回当前数组中索引为X的元素。X可以是负数(从末尾开始计算)依赖于数组元素类型snack-jsonpath 增量操作符(支持) 操作符描述示例startsWith左(字符串)开头匹配右[?(@.s startsWith 'a')]endsWith左(字符串)结尾匹配右[?(@.s endsWith 'b')]contains左(数组或字符串)包含匹配右[?(@.s contains 'c')]JSONPath 语法示例 JSON 样本数据 { "store": { "book": [ { "category": "reference", "author": "Nigel Rees", "title": "Sayings of the Century", "price": 8.95 }, { "category": "fiction", "author": "Evelyn Waugh", "title": "Sword of Honour", "price": 12.99 }, { "category": "fiction", "author": "Herman Melville", "title": "Moby Dick", "isbn": "0-553-21311-3", "price": 8.99 }, { "category": "fiction", "author": "J. R. R. Tolkien", "title": "The Lord of the Rings", "isbn": "0-395-19395-8", "price": 22.99 } ], "bicycle": { "color": "red", "price": 399 } } }示例JSONPath表达式及其应用于示例JSON值时的预期结果 JSONPath预期结果$.store.book[*].author书店里所有书的作者$..autho所有作者$.store.*商店里的所有东西,包括一些书和一辆红色的自行车$.store..price商店里所有东西的价格$..book[2]第三本书$..book[2].author第三本书的作者$..book[2].publisher空结果:第三本书没有“publisher”成员$..book[-1]最后一本书$..book[0,1]`$..book[:2]`前两本书$..book[?@.isbn]所有有国际标准书号的书`$..book[?@.price {o.addNew().set("title", "开始").set("type", "start"); o.addNew().set("title", "结束").set("type", "end"); }); oNode.get("id").getInt(); oNode.get("layout").get(0).get("title").getString(); oNode.getOrNew("list").fillJson("[1,2,3,4,5,6]"); 支持 `json path` 查询、构建、删除 ONode.ofBean(store).select("$..book[?@.tags contains 'war'].first()").toBean(Book.class); //RFC9535 规范,可以没有括号 ONode.ofBean(store).select("$..book[?(!(@.category == 'fiction') && @.price (){}).getClass()); //泛型 ONode.ofJson("[{},{}]").toBean(new TypeRef>(){}); //泛型 //快捷方式 String json = ONode.serialize(user); User user = ONode.deserialize(json, User.class); ### 路径树接口 //case1 ONode o = ONode.ofJson(json); ONode rst = o.select("$.data.list[*].mobile"); //自动为查询到的节点,生成 path 属性 List rstPaths = rst.pathList(); //获取结果节点的路径列表 for(ONode n1 : rst.getArray()) { n1.path(); //当前路径 n1.parent(); //父级节点 } //case2 ONode o = ONode.ofJson(json).usePaths(); //手动为每个子节点,生成 path 属性 ONode rst = o.get("data").get("list").get(2); rst.path(); rst.parent(); ### 高级定制 Json 编解码定制 Options options = Options.of(); //添加检测器(for Feature.Read_AutoType) options.addChecker(clzName -> { //通过 if (clzName.startsWith("com.ok.xxx.")) { return TypeChecker.ALLOW; } //拒绝 if (clzName.startsWith("com.no.yyy.")) { return TypeChecker.DENY; } //跳过 return TypeChecker.SKIP; }); //添加编码器 options.addEncoder(Date.class, (ctx, value, target) -> { target.setValue(DateUtil.format(data, "yyyy-MM-dd")); }); //添加解码器 options.addDecoder(Date.class, ...); //添加创建器(接管类实例化) options.addCreator(...); //添加特性 options.addFeature(Feature.Write_PrettyFormat); //移除特性 options.removeFeature(Feature.Write_PrettyFormat); //设置日期格式附 options.addFeature(Feature.Write_UseDateFormat); //使用日期格式 options.dateFormat("yyyy-MM"); //.. String json = ONode.ofBean(orderModel, options).toJson(); JsonPath 函数与操作符定制 import org.noear.snack4.ONode; import org.noear.snack4.jsonpath.FunctionLib; public class FunctionDemo { public static void main(String[] args) { //定制 floor 函数 FunctionLib.register("floor", (ctx, argNodes) -> { ONode arg0 = argNodes.get(0); //节点列表(选择器的结果) if (ctx.isDescendant()) { for (ONode n1 : arg0.getArray()) { if (n1.isNumber()) { n1.setValue(Math.floor(n1.getDouble())); } } return arg0; } else { ONode n1 = arg0.get(0); if (n1.isNumber()) { return ctx.newNode(Math.floor(n1.getDouble())); } else { return ctx.newNode(); } } }); //检验效果(在 IETF 规范里以子项进行过滤,即 1,2) //out: 1.0 System.out.println(ONode.ofJson("{'a':1,'b':2}") .select("$.a.floor()") .toJson()); //参考 //out: 2.0 System.out.println(ONode.ofJson("{'a':1,'b':2}") .select("$[?floor(@) > 1].first()") .toJson()); } } import org.noear.snack4.ONode; import org.noear.snack4.jsonpath.OperatorLib; public class OperationDemo { public static void main(String[] args) { //定制操作符 OperatorLib.register("startsWith", (ctx, node, term) -> { ONode leftNode = term.getLeftNode(ctx, node); if (leftNode.isString()) { ONode rightNode = term.getRightNode(ctx, node); if (rightNode.isNull()) { return false; } return leftNode.getString().startsWith(rightNode.getString()); } return false; }); //检验效果 assert ONode.ofJson("{'list':['a','b','c']}") .select("$.list[?@ startsWith 'a']") .size() == 1; } } ### 特别感谢JetBrains对开源项目支持:  ## ⬇️ 下载地址 ## {alert type="warning"}下载后请先检查文件完整性,如有问题请在评论区反馈{/alert} -
nop-entropy {card-default label="? 项目信息"} ? 项目名称:nop-entropy ? 开发语言:Java ⭐ Star数:1141 | ? Fork数:392 ? 开源协议:未知 ? 项目地址:https://gitee.com/canonical-entropy/nop-entropy {/card-default} 项目介绍 Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用 项目详情 [[English]](README.en.md) [[Tutorial]](./docs/tutorial/tutorial_en.md) [[开发示例]](./docs/tutorial/tutorial.md) [[介绍和答疑视频]](https://www.bilibili.com/video/BV1u84y1w7kX/) Nop Platform 2.0 ! ! star Ask DeepWiki ! 介绍 可逆计算:下一代软件构造理论 让演化可编程:XLang 与可逆计算的结构化范式 Nop is nOt Programming(非编程) Nop Platform 2.0 is a next-generation low-code development platform built from scratch based on the principles of reversible computation, adopting a language-oriented programming paradigm. It includes a suite of fully designed engines such as a GraphQL engine, ORM engine, workflow engine, reporting engine, rule engine, and batch processing engine, all developed from scratch based on new principles. It automatically generates GraphQL/REST/gRPC services according to Excel data models, allowing for customized development without modifying the source code of the basic product. It supports native compilation with GraalVM, and is free for commercial use by small and medium-sized enterprises. The underlying architecture of the Nop platform does not utilize third-party frameworks such as Spring. Instead, it has been redesigned and implemented based on new software construction principles, greatly reducing the complexity of the framework’s internal structure while significantly enhancing its flexibility, scalability, and performance. Its design goal is to explore next-generation software production technologies, laying the technical foundation for intelligent software production in the AI era. Nop Platform 2.0是基于可逆计算原理从零开始构建的采用面向语言编程范式的下一代低代码开发平台。包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计,根据Excel数据模型自动生成GraphQL/REST/gRPC服务,定制化开发无需修改基础产品源码,支持GraalVM原生编译,中小企业可以免费商用。 Nop平台的底层没有使用Spring等第三方框架,而是基于新的软件构造原理重新设计并实现,极大降低了框架内在结构的复杂性,同时大幅提升框架的灵活性、可扩展性和性能。它的设计目标是探索下一代软件生产技术,为AI时代的软件智能生产奠定技术基础 nop-entropy是Nop平台的后端部分。它采用Java语言实现,不依赖第三方框架,可以和Quarkus、Spring或者Solon框架集成在一起使用。 nop-entropy支持GraalVM技术,可以借助于Quarkus 或者SpringNative 框架编译为原生可执行程序,运行时不需要安装JDK,且启动速度提升数十倍。 nop-entropy的设计目标是成为简单易用的领域语言工作台(Domain Language Workbench) 。在Nop平台中,我们一般并不直接使用通用的程序语言如Java来表达业务逻辑,而是先设计一个DSL语言,然后再用DSL来表达业务。通过增加简单的元数据定义,就可以自动得到对应的解析器、验证器、IDE插件、调试工具等,并自动为DSL领域语言增加模块分解、差量定制、元编程等通用语言特性。 在这一点上,它类似于Jetbrains公司的MPS产品 ,只是它的设计原理和技术实现路径与MPS有着本质性差别。 nop-entropy采用云原生设计,内置分布式事务和多租户支持,可以单机运行,也可以作为分布式集群运行,可以提供在线的API服务,也可以将针对单个业务对象的在线服务自动包装为针对批处理文件的批处理任务。对于大多数业务应用场景均提供相应的模型支持,只需少量配置即可完成主要功能,大大降低对手工编码的需求。 nop-entropy在开发期可以作为支持增量式开发的低代码平台,自动生成各类代码以及相关文档,在运行期可以作为* 面向最终用户的无代码平台的支撑技术,允许客户在线调整业务模块功能,以所见即所得的方式进行产品迭代。Nop平台可以作为一个非常精巧的通用SAAS平台底座*,基于它只需要做少量包装即可实现一个完善的针对特定领域的SAAS平台。 目前Nop平台开源的部分主要包含XLang语言的实现,以及ORM、依赖注入容器(IoC)、分布式配置(Config)、GraphQLEngine、报表引擎(Report Engine)、任务调度引擎(Job Scheduler)、批处理引擎(Batch Processing Engine)、规则引擎(Rule Engine)、工作流引擎(Workflow Engine)、流处理引擎(Stream Engine)以及AI大模型集成(Gateway/Agent/RAG/MCP)等基础框架,后续规划主要为商业智能(BI)等业务开发常用部分。 Nop Platform 2.0的代码是由Entropy Platform 1.0重构而来 最近增加了对国产框架solon的集成,参见nop-solon,打包后的jar包大小相比与Spring和Quarkus要降低10多M。开发进度: 模块说明进度nop-api-supportAPI接口的支持类已完成nop-codegen数据驱动的代码生成器已完成nop-antlrAntlr的模型驱动改造已完成nop-core虚拟文件系统、反射机制、XML/JSON解析已完成nop-ioc声明式IoC容器已完成nop-config动态配置中心已完成nop-xlangXLang脚本语言和模板语言已完成nop-daoJDBC访问、事务、数据库方言已完成nop-orm下一代ORM引擎已完成nop-graphql下一代GraphQL引擎已完成nop-rpc分布式RPC调用已完成nop-ooxmlOffice文件的解析和生成,取代POI。Word报表模板已完成nop-report中国式报表引擎已完成nop-rule规则引擎已完成nop-autotest模型驱动的自动化测试框架已完成nop-idea-pluginIDEA开发插件,支持语法提示、文件跳转、断点调试基本可用nop-cli将代码生成器、文件监听等功能封装为命令行工具基本可用nop-cluster分布式集群支持50%nop-tcc分布式事务已完成nop-dyn在线设计表单和数据模型、服务函数75%nop-workflow下一代工作流引擎65%nop-task下一代逻辑流编排基本可用nop-job分布式任务调度50%nop-batch下一代批处理引擎基本可用nop-messageKafka/Pulsar消息队列封装20%nop-dbtool数据库导入导出、数据结构比较、同步工具初步实现nop-metadata元数据管理、数据治理、数据质量40%nop-nosqlRedis封装已完成nop-stream声明式图模型驱动的流处理引擎,可集成Flink50%nop-search基于Lucene的全文检索引擎25%nop-networkTCP/IP服务处理框架、RPC通信40%nop-datavBI数据分析0%nop-aiAI大模型集成:MCP、Gateway、Agent、RAG45%nop-jsGraalVM Js引擎封装,在Java中运行JS50%nop-integration邮件、短信、文件服务等外部服务封装30%nop-auth用户权限管理已完成nop-sys系统配置管理已完成源码地址 gitee: https://gitee.com/canonical-entropy/nop-entropy gitcode:https://gitcode.com/canonical-entropy/nop-entropy github: https://github.com/entropy-cloud/nop-entropy 设计原理 可逆计算:下一代软件构造理论 NOP:下一代软件生产范式 低代码平台需要什么样的ORM引擎? 写给程序员的可逆计算理论辨析 写给程序员的可逆计算理论辨析补遗 让演化可编程:XLang 与可逆计算的结构化范式, 这一篇是AI整理的介绍文章,推荐阅读 快速开始 开发示例 介绍和答疑视频 开发文档导引 与若依Ruoyi框架集成 更多介绍视频 软件架构 nop-entropy没有使用Spring框架,所有模块均从零开始采用模型驱动的方式研发(框架本身的很多代码也是根据模型生成并可以通过声明式方式进行定制调整的)。原则上说,nop-entropy可以运行在任何支持REST服务标准的微服务框架之上。目前,我们主要是支持Quarkus框架以及Spring框架的集成。 Quarkus是Redhat公司所开源的新一代云原生微服务框架,它的开发体验以及针对GraalVM Native编译的成熟程度都明显优于Spring框架。借助于Quarkus框架,我们既可以将应用程序编译为单一的uber jar(通过java -jar指令来运行),也可以将程序编译为exe可执行程序,在运行时不需要安装JDK,而且启动速度提升数十倍。目前,nop-entropy的开发调试主要是基于Quarkus框架进行,所以对Spring框架的支持可能会存在一些小问题。 Nop平台的前端代码在nop-chaos项目中,nop-chaos的打包结果被包装为以下Java模块。 nop-web-site: 前端主页面框架的打包结果 nop-web-amis-editor: 前端使用的AMIS可视化编辑器的打包结果 在一般的业务开发中我们只会编写JSON和少量JS文件,不需要重新编译nop-chaos项目。 安装教程 环境准备: JDK 17+、Maven 3.9.3+、Git git clone https://gitee.com/canonical-entropy/nop-entropy.git cd nop-entropy mvn install -DskipTests -Dquarkus.package.type=uber-jar注意: 编译运行需要JDK17以上版本,不支持JDK8, 在PowerShell中执行的时候需要用引号将参数包裹起来 据反馈,有些JDK版本编译会报错,如jdk:17.0.9-graal会报错IndexOutOfBound异常,所以如果编译出现问题时可以先尝试一下OpenJDK。 mvn clean install "-DskipTests" "-Dquarkus.package.type=uber-jar"quarkus.package.type参数是quarkus框架所识别的一个参数,指定它为uber-jar将会把nop-quarkus-demo等项目打包成一个包含所有依赖类的单一jar包。可以通过java -jar XXX-runner.jar的方式直接运行。 Windows目录名长度限制 避免把仓库放在深层“Downloads”路径(如 C:\Users\\Downloads\...)。建议使用短路径,如 D:\nop 或 C:\nop,尽量让项目的完整绝对路径保持较短。 本仓库的 2.0.0-SNAPSHOT 模块需要先在本地构建安装,不能从公共仓库下载。请先在仓库根目录执行一次完整安装: ./mvnw clean install "-DskipTests" "-T 1C"若看到“Could not resolve dependencies … (absent)”等错误,通常是因为未进行本地安装或之前的失败被缓存。可尝试: ./mvnw clean install "-DskipTests" "-U"仍不行时,清理本地缓存后重试(默认仓库:C:\Users\\.m2\repository): Remove-Item -Recurse -Force "$env:USERPROFILE\.m2\repository\io\github\entropy-cloud"; ./mvnw clean install "-DskipTests"PowerShell乱码问题解决 可以将PowerShell的编码设置为UTF8 $OutputEncoding = [Console]::OutputEncoding = [Text.Encoding]::UTF8目前已经升级到quarkus3.0版本,用低版本maven运行nop-auth-app等模块可能会失败。建议升级到maven 3.9.3版本,或者使用nop-entropy跟目录下的mvnw指令,它会自动下载并使用maven 3.9.3。 nop-idea-plugin nop-idea-plugin是IDEA的插件项目,必须采用Gradle编译。 cd nop-idea-plugin gradlew buildPlugin目前使用的idea打包插件不支持高版本gradle。gradlew会自动下载所需的gradle版本,目前使用的是7.5.1 如果想加快gradle下载速度,可以gradle-wrapper.properties中换成 distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-7.5.1-bin.zip编译出来的插件存放在build/distributions目录下。参见插件的安装和使用。 使用说明 平台内置了一个演示程序,使用H2内存数据库,可以直接启动运行 cd nop-demo/nop-quarkus-demo/target java -Dquarkus.profile=dev -jar nop-quarkus-demo-2.0.0-SNAPSHOT-runner.jar如果不指定profile=dev,则会以prod模式启动。prod模式下需要配置application.yaml中的数据库连接,缺省使用本机的MySQL数据库 访问链接 http://localhost:8080, 用户名:nop, 密码:123 在IDEA中可以调试运行nop-quarks-demo项目中的QuarksDemoMain类。 quarkus框架在开发期提供了如下调试工具, http://localhost:8080/q/dev http://localhost:8080/q/graphql-ui在graphql-ui工具中可以查看所有后端服务函数的定义和参数。 完整的开发示例,参见tutorial 框架集成 nop-entropy不依赖于spring或者quarkus框架,也不依赖于特定数据库,因此它很容易集成在第三方应用中使用。 核心引擎的功能并不依赖于数据库,可以以纯内存的方式运行。所有存储相关的代码都已经剥离到独立的dao模块中,例如nop-auth-dao,nop-sys-dao等。1.作为增量式代码生成工具使用:maven打包时可以读取Excel模型文件,应用指定的模板目录,以增量化的方式生成代码。参见codegen.md 2.为已有的XML/JSON/YAML格式的配置文件、领域模型文件提供可逆计算支持:为模型文件增加动态分解、合并、产品化定制机制,对应用层完全透明,对于引擎层只需要编写一个自定义的模型文件加载器。参见delta-loader.md 为开发领域特定语言(DSL)提供支持:只需要定义xdef元模型文件即可获得语法提示、链接跳转、断点调试等IDE支持。后续会提供可视化设计器定制支持。参见idea-plugin.md 作为模型驱动的GraphQL引擎使用:根据Excel模型自动生成GraphQL服务,支持复杂主子表的增删改查。参见graphql.md 作为报表引擎使用:只需要在Word或者Excel文件中增加少量标注即可作为报表模板运行,动态生成复杂的中国式报表。参见report.md 作为工作流引擎使用:与定时调度引擎相结合,支持人工操作的审批工作流,也支持类似airflow的分布式DAG任务流。参见workflow.md 作为批处理引擎使用:类似SpringBatch+XXLJob框架,提供分布式批处理任务支持。可以通过配置文件指定如何解析、生成文本或者二进制数据文件,无需编写解析和生成代码。参见batch.md 作为规则引擎使用:通过配置实现复杂的业务规则判断。参见rule.md 作为数据驱动的自动化测试框架使用:通过录制、回放的机制实现自动化测试。第一遍运行的时候自动录制输出数据,此后运行时自动和录制的数据快照进行比较,减少手工需要编写的代码量。参见autotest.md 示例页面 界面框架 ! 使用Excel来定义数据模型 ! 使用Excel来定义对外发布的API模型 ! 集成百度的前端低代码框架AMIS ! 集成GraphQL调试工具 ! 提供IDEA插件,支持自定义DSL的断点调试 ! 使用Excel作为报表设计器,支持复杂的中国式报表 ! ! 使用Word模板来导出Word报表 ! 使用Excel来设计决策表和决策矩阵 ! ! 开源协议 Nop平台的前端采用MIT协议,后端整体采用AGPL3.0开源协议。但是国内的中小企业可以在类似Apache2.0协议的条件下使用本项目的代码(可以免费商用,修改代码无需开源,但是要保留源码中的原始版权信息)。为了方便第三方集成,nop-api-support/nop-commons/nop-core这三个包采用Apache 2.0协议。 判断是否中小企业的算法如下: switch(贵公司很有钱吗()){ case "有的是钱":{ console.log("都这么有钱了,还需要整天琢磨别人的知识产权是否免费吗?"); return false; default: return true; } }关于第三方依赖的版权声明,详见NOTICE文件。 技术支持 使用中遇到问题或者BUG可以在Gitee上提Issues,或者在GitCode上提Issues 致谢 感谢网友xyplayman贡献的ORM测试用例,原项目地址 https://gitee.com/xyplayman/nop-orm-demo 感谢网友Crazydan Studio对IDEA插件所进行的彻底改写,极大丰富了这个插件的功能 社区 官网国际站: https://nop-platform.github.io/ GitCode社区: https://gitcode.com/org/nop-platform/discussion 网友Crazydan Studio建立的Nop开发实践分享网站 网友评价 网友: 我们是30人的小公司,一个大半年的项目试着用了效果还可以,效果质量各方面都有提升,后面准备深度使用。 现在回过头来看最大的2个感受: 下层基础决定上层建筑,一定程度上拉高了开发人员的技术水平下限 往年维护的各种解决方案的基础框架,通过这种思想是能够形成统一,让沉淀有深度不仅仅是广度 而且现在发现之前都用错了 有一些个性的代码直接在clone分支重写了 目前看都完全可以不动Nop底层代码达到个性化的需求。如果开源项目都这样去规划 就没有那么多冗余的衍生版本了 canonical: 一个小众的框架,你们在不熟悉的情况下直接用于开发产品上线,当时是怎么想的? 网友: 低代码这块很早就了解了 也用过jeecg,jepass这种,看过很多的爱速搭、宜搭从零到一的技术路线。基于这个,一看到nop,就知道这个没错了,果断用了。 canonical: 感觉Nop与上面这些低代码框架有什么区别? 网友: 缺少理论做支撑.常见的低代码框架技术路线都会不可避免的越走越窄,太面向实践,短期可能有优势。但是web3时代,web2的产物考虑不够长远慢慢都会被淘汰。 我个人偏见,Nop相比开源的低代码框架真的是降维打击。感谢作者开源这么优秀的框架。 作者微信和微信讨论群 ! 添加微信时请注明:加入Nop平台群 微信公众号 ! ⬇️ 下载地址 {cloud type="default" title="网盘下载" url="https://gitee.com/canonical-entropy/nop-entropy/repository/archive/master.zip"} 下载后请先检查文件完整性,如有问题请在评论区反馈 -
咕炮课堂Java架构师2020 咕炮课堂Java架构师2020 图片1 教程介绍 主要针对1到5年及以上工作经验的开发人员,提供互联网行业热门技术的Java架构师专题培训,由业内技术大牛,行业及实战经验丰富的讲师进行技术分享。内容涵盖redis,mongodb,dubbo,zookeeper,kafka 高并发、高可用、分布式、高性能、并发编程等技术。 学习地址 百度:https://pan.baidu.com/s/1aHzqcduUfOZEH6pVAmJKbA 天翼:https://cloud.189.cn/t/eemYnivuIbEn 微云:https://share.weiyun.com/3FQ1xkmH UC:https://www.yun.cn/s/72739b91e04f46808057d44c87854eb3 下载后请先检查文件完整性,如有问题请在评论区反馈 -
Java代码审计工程师直播第六期 Java代码审计工程师直播第六期 图片1 课程介绍 本期直播课程将深入探讨Java代码审计的关键概念和技术。涵盖课题包括安全漏洞分析、代码审查方法、常见漏洞案例分析等。学员将通过实例掌握代码审计实战技能,提升对Java应用程序安全的认知和技能水平。 学习地址 百度:https://pan.baidu.com/s/1TWOb77kN0vjMacSMCL9Tyw?pwd=rezs 天翼:https://cloud.189.cn/t/Ib6RBrreYnIj(访问码:tz9f) 阿里:https://www.alipan.com/s/bDY8a3mbfGg 夸克:https://pan.quark.cn/s/b18666ec2c52 下载后请先检查文件完整性,如有问题请在评论区反馈 -
从0开始用Java做智慧物联网 从0开始用Java做智慧物联网 图片1 教程介绍 有Java基础,学习过Spring,SpringMVC,Mybatis框架,做过简单项目以上的同学均可学习。但并不代表,本课程就是个入门教程,对于有开发经验的同学们,物联网这个行业是个朝阳产业,也可以说是未来十年发展的蓝海。那我相信,有实体经济支撑的行业绝不会像互联网行业有那样大的泡沫,也绝不会让你工作的没有安全感。对于有志于从事物联网相关工作的同学,对于想从各方面提升自己的各位同学们来说,本课程也非常的适合你们去学习。 学习地址 百度:https://pan.baidu.com/s/1qmYYuu-GyMEZKabtKKEfXw 天翼:https://cloud.189.cn/t/NN7z2iaMNbM3 微云:https://share.weiyun.com/RqbpqTWt UC:https://www.yun.cn/s/fba295172a5d4d05a2e2858eab8c463d 文件信息 文件大小: 8953324419 字节 MD5: 8E9F805C23566437926547A0AD970D6E SHA1: B71265CFDF3475C6024FD2B3D2BDC68C4FF2317E CRC32: F9DA7FB8 下载后请先检查文件完整性,如有问题请在评论区反馈 -
轻松搞定JAVA基础+面向对象 轻松搞定JAVA基础+面向对象 图片1 课程介绍 JAVA面向对象是很多同学们的头痛之处,甚至很多同学在工作中仍然有点晕头转向,本次的课程就给同学们来一次夯实基础和重拾面向对象的好机会。同学们可以通过课程快速的掌握JAVA基础和面向对象精髓,不让基础和一些基本概念成为工作中的难点。 学习地址 百度:https://pan.baidu.com/s/1YE76IGF_EzIxIb5xi7bWYw 天翼:https://cloud.189.cn/t/FZ77namyM3yq 阿里:https://www.aliyundrive.com/s/fbzaJoNyJvy 下载后请先检查文件完整性,如有问题请在评论区反馈 -
安卓随身Java v1.1.2绿化版 软件介绍 随身Java精选了在Java基础、JavaEE、数据库、面试等过程中经常遇到的知识点,覆盖面广。适用于初学者和有一定的开发经验的开发者,随时随地学习Java知识,提高开发技术水平。已去除广告! 软件安卓随身Java v1.1.2绿化版 图片2 ⬇️ 下载地址 {cloud type="weiyun" title="腾讯微云" url="https://share.weiyun.com/f1TPt7gg"} {cloud type="tianyi" title="天翼云盘" url="https://cloud.189.cn/t/F7bme2qQNjau"} {cloud type="default" title="网盘下载" url="https://www.yun.cn/s/720ee6d8825b4174b09cd9cbdf677226"} 下载后请先检查文件完整性,如有问题请在评论区反馈 -
马老师的Java高级工程师就业班 马老师的Java高级工程师就业班 图片1 课程介绍 本课程由资深Java专家马老师授课,旨在培养学员成为具备高级工程师水平的Java开发人才。内容包括Java高级特性、分布式架构设计、微服务开发等,结合实际案例进行深入讲解,助力学员顺利迈向职业生涯的新高度。 学习地址 百度:https://pan.baidu.com/s/1YJ_7qc80S_3xDVWV3wUPSw?pwd=n3mr 天翼:https://cloud.189.cn/t/Vna6R3iQvqEf(访问码:ty9n) 阿里:https://www.alipan.com/s/63DCXNjd9AA 夸克:https://pan.quark.cn/s/c24303ad0943 下载后请先检查文件完整性,如有问题请在评论区反馈 -
马士兵Java零基础入门到精通 马士兵Java零基础入门到精通 图片1 教程介绍 本课程是一门适合纯小白入门的课程,带你从无到有走进java的世界,让你精通java的各种基础知识以及web开发框架,手把手带你敲出企业级实战项目,有问必答,理论与实践相结合教学,带你掌握真正的java核心技术。 学习地址 百度:https://pan.baidu.com/s/1C9u0P_PXlMospy8xPZY78Q 天翼:https://cloud.189.cn/t/Rr6v2yIVBrYr 微云:https://share.weiyun.com/VjbfVbeZ UC:https://www.yun.cn/s/407bae01d6b94a77b7fe263ab4418de2 文件信息 文件大小: 10776743135 字节 MD5: 210C3717719E116B4626F448C5E89FAD SHA1: 57E361B5959FB711315B4F6A0129FB92FA3367C3 CRC32: 38231DBA 下载后请先检查文件完整性,如有问题请在评论区反馈 -
轻松掌握最新版JAVA开发秘诀 轻松掌握最新版JAVA开发秘诀 图片1 课程介绍 很适合入门学习到实战的JAVA开发实战课程,课程的整体内容是经过重新设计而来的,同学们完成课程的学习可以对JAVA开发的整体流程有一个清晰的认知。课程在讲解过程中还融入了很多工程案例,经验项目总结等等,这都会提高课程的教学质量。同时课程还配套了全部的课程资料,包括课程的随堂讲义,课程的随堂笔记以及课程中用到的代码等。非常适合初学者及JAVA爱好者学习研究。 学习地址 百度:https://pan.baidu.com/s/1sHFMqH1a2vmmDhvBxrfgnw 天翼:https://cloud.189.cn/t/6FNFBjBBJbym 阿里:https://www.aliyundrive.com/s/TcmDMCXT2Au 下载后请先检查文件完整性,如有问题请在评论区反馈 -
最新JAVA大型互联网架构实战视频 最新JAVA大型互联网架构实战视频1 课程介绍 超强的一次项目JAVA互联网架构师项目实战课程,融合了很多一线的技术。包括了Dubbo案例、架构演变,MySQL数据库,VUE全栈技术,项目主体开发部分,SpringSecurity,Github实战,Nginx技术,SpringBoot,Docker容器技术,ES集群技术,RabbtiMQ等实战高阶技术。 学习地址 百度:https://pan.baidu.com/s/1uz2SLj8nGjkXr8GDYF61zg 天翼:https://cloud.189.cn/t/j67RJfeMvaqa 阿里:https://www.aliyundrive.com/s/zYzRRCdgsVu 下载后请先检查文件完整性,如有问题请在评论区反馈 -
大厂MVP技术JAVA架构师培养 大厂MVP技术JAVA架构师培养 图片1 课程介绍 很强悍的架构师涨薪计划课程,课程由专家级MVP讲师进行教学,分为是一个章节进行分解式面试及讲解,不仅仅是面试,更像是一个专业的架构师研讨会课程。课程内容从数据结构与算法、Spring Framwork、JVM原理、 JUC并发编程、消息队列、存储、缓存与搜索、服务治理与分布式、云原生、业务场景与项目架构设计等业务场景,进行全方位的讨论与指导,非常有提升性。 学习地址 百度:https://pan.baidu.com/s/1RxgohhjX7_oDq1HMUfDfyg 天翼:https://cloud.189.cn/t/IfYfMzmmMN3i(访问码:7sej) 阿里:https://www.aliyundrive.com/s/R785syXNM67 下载后请先检查文件完整性,如有问题请在评论区反馈