Flowable集成达梦8数据库:选Oracle兼容模式,避开启动踩坑
简介这是一份面向Java开发者的Flowable工作流引擎与达梦8国产数据库集成实战资料聚焦于Spring Boot环境中如何引入Flowable依赖、配置达梦8驱动与数据源、初始化流程引擎和数据库表结构并解决两者配合时的兼容性与异常问题。资源为RAR压缩包大小约13.54MB下载页暂未列出内部文件明细已有4538人学习适合正在推进国产化替代、政务金融等敏感领域流程系统建设或需要将BPM引擎从MySQL/Oracle迁移到达梦8环境的中高级开发人员。内容覆盖环境准备、Maven依赖管理、达梦8 JDBC驱动com.dm.jdbc.Driver与数据源配置、Flowable流程引擎Bean初始化、历史数据表结构创建及达梦方言适配同时针对达梦特有异常捕获、索引与SQL性能调优、安全合规设置、CI/CD集成测试等实践要点展开说明。通过对照该资料可系统掌握Flowable连接达梦8的完整配置链路熟悉国产数据库集成工作流引擎的排错思路为高安全要求的业务流程平台提供可复用的落地参考。1. flowable集成达梦8数据库先用Oracle兼容模式再谈其他做国产化适配的Java后端大概率都会撞上这个标题把工作流引擎从MySQL换成达梦8以为改个数据源就能启动。我在模拟项目X里第一次这么干启动直接翻车报错信息指向Flowable引擎的一张基础表不存在。查了半天才明白Flowable默认不认达梦官方支持的数据库类型里没有dm这一项而达梦8恰好又同时提供MySQL、Oracle、PG三种兼容模式选错模式后续全是坑。这篇笔记会把flowable集成达梦8数据库的完整路径讲清楚兼容模式怎么选、表结构从哪来、方言怎么配、有哪些必踩的坑适合第一次做达梦适配、又被启动日志卡住的后端开发者。2. 达梦8兼容模式选型Oracle兼容模式是Flowable集成主路2.1 达梦8的MySQL兼容模式与Oracle兼容模式怎么选达梦8安装或初始化实例时会让你选兼容模式常见的是兼容Oracle、兼容MySQL、兼容PostgreSQL。很多人惯性思维是“我原来项目用的MySQL那就选MySQL兼容模式”这个直觉在业务系统里也许成立但放到Flowable上就变成了一条难走的岔路。原因在Flowable的SQL方言体系里。Flowable官方支持Oracle、MySQL、SQL Server、PostgreSQL、DB2等它的建表脚本、分页SQL、Sequence处理、类型映射都是围绕这些标准方言写的。达梦的MySQL兼容模式并不是真正的MySQL它只是让SQL语法尽量靠近MySQL但系统表、元数据查询、自增列行为和MySQL仍有差异Flowable识别databaseType为mysql之后跑出来的建表语句经常在达梦上中途失败。我一般会直接选Oracle兼容模式。Flowable的Oracle方言是成熟稳定的达梦的Oracle兼容模式在UDT、ROWNUM、NVL、Sequence、加引号的标识符这些特性上覆盖度很高跑Oracle脚本的成功率远高于MySQL脚本。对比项MySQL兼容模式Oracle兼容模式Flowable官方脚本匹配度低SQL语法差异大高可复用Oracle脚本表名大小写行为易出现小写表名默认大写与脚本一致Sequence/自增支持自增语法兼容一般支持Sequence分页SQL达梦有自己的LIMIT实现兼容ROWNUM风格元数据查询与Flowable检查逻辑偏差大USER_TABLES可用一个冷知识达梦在初始化实例时可以在配置文件里指定大小写敏感如果初始化的库是大小写不敏感模式后面很多“表找不到”的诡异问题都会消失。如果项目允许重新初始化建议提前确认而不是等项目上线之后再头疼。2.2 Flowable的databaseType机制为什么直接填dm会报错Flowable引擎在启动时要做的第一件事是确定databaseType这个值决定它加载哪一套SQL脚本和方言类。它的判定链大致是先从processEngineConfiguration里读配置拿不到就根据JDBC连接元数据猜猜不到就抛“Unknown database type”。如果你在配置里写flowable.database-typedm大部分版本会直接不认因为内置的枚举或映射表里没有这个值。有人会尝试flowable.database-typemysql然后靠达梦MySQL兼容模式硬扛但这种做法在初始化建表阶段就容易触发语法错误因为DM的MySQL兼容模式并不等于MySQL 8。我查了很多现成方案最稳妥的做法有两个方向一是让Flowable认为自己在连Oracle使用Oracle方言和Oracle脚本靠达梦的Oracle兼容模式兜底这就是最小集成方案。二是自定义一个Dm8Dialect并注册到Flowable的方言工厂里让引擎认识dm这个类型同时把方言挂到Oracle方言上做少量覆写这是优化方案。两个方向不冲突实际上我是先用方案一跑通再用方案二做分页和类型收敛。2.3 先确认三件事版本、兼容模式、账号权限动手之前先到达梦服务器上做三件确认每件都影响后面几小时的排查效率。第一是确认达梦8的JDBC驱动版本与数据库服务端版本是否匹配。达梦的驱动包和服务端版本不匹配时连接报错非常迷惑有时候是“网络通信异常”有时候是“无效的驱动程序属性”换一个对应版本的驱动包就正常了。我建议直接从达梦安装目录的drivers/jdbc目录里拷别从网上下载来历不明的包。第二是确认当前连接到的数据库实例是什么兼容模式。可以用达梦管理工具登录执行select compatibility_mode返回2一般代表Oracle兼容模式返回0代表MySQL兼容模式。这里有个细节兼容模式在初始化实例后不好改如果项目还没初始化选Oracle模式能省下大量的适配时间。第三是确认账号权限。Flowable建表需要CREATE TABLE、CREATE SEQUENCE、CREATE INDEX等权限日常开发账号如果只给了DML权限后面建表步骤会隔三差五报ORA-01031。建议用SYSDBA建一个独立的Flowable业务账号一次性把对象权限给够再开始集成。这三件事确认完基本能把一半的踩坑提前排除掉。3. 替换数据源与初始化表结构让Flowable先能启动3.1 驱动包与JDBC URL配置最小可用的数据源替换确认达梦兼容模式是Oracle之后第一步是把Spring Boot或Spring根配置里的数据源换成达梦。达梦8的JDBC驱动类名是dm.jdbc.driver.DmDriver这个类名在不同版本里都比较稳定与之配套的JDBC URL格式是jdbc:dm://ip:port。下面是模拟项目X里我实际使用的application.yml配置片段spring: datasource: url: jdbc:dm://127.0.0.1:5236 driver-class-name: dm.jdbc.driver.DmDriver username: workflow_user password: workflow_pass hikari: minimum-idle: 5 maximum-pool-size: 20 connection-test-query: SELECT 1 flowable: database-type: oracle database-schema-update: true async-executor-activate: true check-process-definitions: false这段配置里有两个关键点。第一是flowable.database-type必须写成oracle而不是dm这是为了让Flowable走Oracle方言分支第二是connection-test-query写SELECT 1达梦兼容Oracle模式支持这个探活SQLHikariCP默认的探活语句在某些场景下会被达梦拒绝。check-process-definitions建议先关掉否则Flowable启动时会扫描classpath固定的bpmn目录如果表还没建好资源扫描和建表顺序互相纠缠日志里会出现一堆饥饿等待。配置改完后别急着启动应用。先写一个极简启动类或者直接用管理工具通过JDBC连一次达梦确认驱动包能加载、账号密码能通过再让Flowable介入否则你分不清是数据源问题还是Flowable问题。3.2 表结构从哪来选Oracle脚本而不是MySQL脚本Flowable引擎自带整套建表脚本不同版本在flowable-db-sql这个模块的resources目录下按数据库类型分成多个子目录。集成达梦8时我用的方式是直接取oracle版本的建表脚本而不是mysql版本这是整个方案里性价比最高的一步。手动执行脚本的路径通常是org/flowable/db/schema/flowable/或类似结构下的flowable.oracle.create.sql具体文件名以你项目依赖的Flowable版本为准。打开脚本后你会发现这套脚本用的是标准Oracle语法VARCHAR2、CLOB、SEQUENCE、CREATE TABLE带主键约束达梦Oracle兼容模式下基本能直接跑。-- 检查Flowable核心表是否创建成功达梦兼容Oracle模式下USER_TABLES可用 SELECT table_name FROM user_tables WHERE table_name IN ( ACT_ID_GROUP, ACT_RU_TASK, ACT_HI_PROCINST );如果返回三行结果说明脚本执行成功。这里有个值得注意的细节Flowable的表名全部是大写而达梦在不加引号时默认把标识符转成大写两者天然一致。如果你之前用了大小写敏感的初始化参数又有小写表名混进来后面的查询就会不停踩坑这也是我前面建议优先确认大小写参数的原因。Oracle脚本里会有建Sequence的语句达梦对Sequence支持得不错但普通账号如果没有CREATE SEQUENCE权限执行到中途就会停。所以前面才强调要给独立账号把权限授全这一步的坑非常实在遇到就是一夜返工。3.3 引擎自动建表与手动建表哪种方式可靠Flowable提供database-schema-updatetrue时会在启动阶段自动建表实际体验是在Oracle方言下达梦也能触发自动建表但成功率取决于账号权限和脚本兼容性。我的建议是首次集成不要依赖自动建表而是手动把Oracle脚本执行干净再把database-schema-update改成true留作增量补表。原因有三个第一自动建表是批量执行中途若遇到不兼容语句很难定位手动执行可以在管理工具里精确看到第几条SQL报错。第二达梦有些版本对批量脚本里的分号、注释格式敏感管理工具分段执行比JDBC批量执行更稳。第三手动建表之后Flowable启动时会做存在性检查表已经存在就不重复建不会产生数据冲突。手动建表完成后启动Spring Boot应用观察日志里Flowable初始化是否成功。第一次能正常打印出引擎启动耗时再往后才谈得上流程部署和运转。4. 让Flowable在达梦8上稳定运行方言与类型适配4.1 最小方案database-typeoracle直接跑通如果你只想把Flowable跑起来不想动引擎内部的方言注册逻辑那上一章的配置就是最小方案。database-typeoracle让Flowable加载Oracle方言而达梦8的Oracle兼容模式会在SQL执行层面把ROWNUM、NVL、TO_CHAR这些Oracle函数解释成自己的实现。这个方案能跑通大部分接口。流程部署、发起、审批、查询待办、查询历史这些核心业务走的是Flowable引擎标准的CRUD和关联查询不会触及特别冷门的SQL特性。模拟项目X里我用这个最小方案跑了将近两周业务侧的流程实例没出过问题。要注意的是最小方案的使用前提是达梦实例确实是Oracle兼容模式。如果库是MySQL兼容模式你就算把database-type设置成oracle执行层也会出错因为两个模式的系统函数和元数据表实现方式差异很大。所以我会再三确认select compatibility_mode返回的是2然后再谈最小方案。4.2 进阶方案自定义Dm8Dialect并注册到引擎最小方案长期用也没问题但如果你的Flowable版本较新、走的是自定义扩展路线或者你会遇到分页SQL在Oracle模式下依然表现怪异的场景那就值得注册一个自定义方言类。Flowable的方言机制允许你注册一个新的databaseType并关联到一个方言实现类。做法是写一个类继承OracleDialect再把实例挂到DbSqlSessionFactory上。下面是模拟项目X里用的一个简版Dm8Dialectpublic class Dm8Dialect extends OracleDialect { public Dm8Dialect() { super(); // 达梦Oracle兼容模式已经覆盖了ROWNUM、NVL等Oracle特性 // 这里留空作为扩展点后续遇到分页差异再覆写对应方法 } Override public String getDbType() { return dm8; } }这段代码看起来短但它起的作用是告诉Flowable我处理不了的类型按Oracle的方式处理我处理得了的差异再逐个覆写。注册方言的配置类大致长这样Configuration public class FlowableDm8Config { Bean public EngineConfigurationConfigurator dm8Configurator() { return engineConfiguration - { if (engineConfiguration instanceof ProcessEngineConfigurationImpl) { ProcessEngineConfigurationImpl cfg (ProcessEngineConfigurationImpl) engineConfiguration; DbSqlSessionFactory sessionFactory cfg.getDbSqlSessionFactory(); if (sessionFactory ! null) { sessionFactory.setDatabaseType(dm8); sessionFactory.addCustomDialect(dm8, Dm8Dialect.class.getName()); } } }; } }注册时机很关键有些Flowable版本在Configurator执行时DbSqlSessionFactory还没初始化所以代码里加了空指针保护。如果你发现注册不生效可以检查引擎初始化顺序或者在构建ProcessEngine之前手动创建并塞入DbSqlSessionFactory。实际经验是你现在不覆写方法也可以真正需要你动手的是分页SQL和特殊类型映射而这会在5.5节里提到。4.3 类型映射和分页SQL的检查点Flowable在Oracle方言下跑达梦常见类型映射是这样的Flowable配置Oracle方言默认类型达梦实际表现建议字符串字段VARCHAR2支持不需要改大文本字段CLOB支持注意驱动读取方式时间戳TIMESTAMP支持避免字符串拼时间布尔类型NUMBER(1)支持查询时用0/1自增主键SEQUENCE支持建Sequence权限前置分页SQL是集成达梦最容易翻车的地方。Flowable的Oracle方言在分页时使用ROWNUM达梦的Oracle兼容模式能识别ROWNUM但个别达梦版本对三层嵌套分页的支持有偏差表现是列表页数据混乱或SQL报错“未支持的分页语法”。遇到这种情况我会在Dm8Dialect里覆写分页相关方法把分页改成达梦实例更稳的写法。不建议一上来就改先跑一下Flowable自带的待办列表查询确认分页正常再决定要不要动分页逻辑。这样能省掉很多不必要的适配工作。5. 集成避坑启动失败、乱码与权限陷阱5.1 启动报FlowableTableExistException脚本其实没跑全现象Flowable启动时抛FlowableTableExistException提示某一张表不存在常见的是ACT_ID_GROUP或ACT_RU_TASK。原因数据库类型配置成mysqlFlowable加载了MySQL建表脚本而达梦MySQL兼容模式在执行过程中静默跳过了部分语句或者脚本虽然执行了但表名大小写和查询时的大小写不一致导致存在性检查失败。解决统一走Oracle脚本手动建表后再启动同时确认flowable.database-typeoracle。如果表名大小写有问题在达梦的初始化参数里把大小写敏感关掉比在业务代码里到处改表名更彻底。5.2 数据源切换后中文全乱现象流程实例名、任务名称、审批意见从达梦读出来后全是问号或乱码。原因达梦服务端字符集与JDBC连接字符集不一致。最常见的是服务端用了UTF-8客户端连接时没指定字符集或者Flowable写入时拿到的是GBK字节流。解决在JDBC URL上显式加上字符集参数比如jdbc:dm://127.0.0.1:5236?charsetutf8并在达梦管理工具里确认数据库字符集为UTF-8。这里还有个隐藏点如果页面显示乱码但数据库里存的正常问题出在展示层而不是集成层排查时先用SQL查一次原始值别让Flowable背黑锅。5.3 普通账号建表权限不足现象手动执行Oracle建表脚本中途报错ORA-01031: insufficient privileges。原因业务账号只有DML权限没有CREATE TABLE、CREATE SEQUENCE、CREATE INDEX权限。解决用SYSDBA登录达梦给Flowable账号授齐权限主要包括CREATE TABLE、CREATE SEQUENCE、CREATE VIEW、CREATE PROCEDURE。授权后重新执行建表脚本。这个坑之所以常见是因为很多开发环境用的是安装时的默认账号权限足够一到测试或生产环境换成受控账号建表脚本就开始碰壁。5.4 大小写敏感与保留字导致建表失败现象脚本执行到某一句时提示语法错误或者表建好后查询时提示表或视图不存在。原因达梦实例初始化时开了大小写敏感而脚本里混入了小写标识符或无引号标识符个别列名或表名触碰了达梦保留字。解决初始化时选不敏感模式脚本统一用大写标识符。如果遇到保留字冲突在方言层或脚本里给对象名加双引号但加引号后大小写敏感又会被触发所以能不改名字就尽量改名字。实在要改优先改自定义表名别动Flowable引擎自身的表名。5.5 分页SQL表现怪异与连接池探活失败现象待办列表分页时页数乱跳或者HikariCP启动时频繁弹连接失败告警。原因分页SQL在三层嵌套下触发了达梦的方言短板连接池探活语句与达梦不兼容导致连接被误判为不可用。解决分页问题用自定义Dm8Dialect覆写分页方法或者把Flowable的列表查询改成基于任务的二次过滤连接池问题把connection-test-query改成SELECT 1就能缓解。这两类问题不常同时出现但一旦出现排查周期都很长建议提前在测试环境压一遍列表页和分页查询。6. 验证与收尾技巧用一条请假流程实例确认集成成功启动日志干净不代表集成成功真正能证明流程跑通的是部署一条流程并完成一个完整实例闭环。我每次适配完成后都会用一条最简单的请假流程做验证流程有一个开始节点、一个审批任务、一个结束节点。// 部署流程定义 repositoryService.createDeployment() .addClasspathResource(processes/leave.bpmn20.xml) .name(达梦流程验证) .deploy(); // 发起流程实例 ProcessInstance instance runtimeService.startProcessInstanceByKey( leave, dm-integration-test); // 查询待办任务 Task task taskService.createTaskQuery() .processInstanceId(instance.getId()) .singleResult(); // 完成审批 taskService.complete(task.getId());这段代码跑通后再查一次历史表确认流程实例已进入已完成状态HistoricProcessInstance historic historyService .createHistoricProcessInstanceQuery() .processInstanceId(instance.getId()) .singleResult();如果historic的endTime不为空说明部署、发起、查询、审批、历史归档整个链路在达梦8上全部正常。我会额外打开SQL日志把Flowable生成的查询语句打印出来人工确认分页和关联查询走的是达梦Oracle兼容语法。现在的习惯是把这套验证脚本固化为一个启动测试类每次环境变更后先跑一遍再放业务进人。这个习惯帮我在后续几个项目里省了不少“环境好了吗”的来回确认。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

VisionMaster标定全流程解析:从成像模型到现场避坑

VisionMaster标定全流程解析:从成像模型到现场避坑

简介:面向机器视觉开发者的VisionMaster标定方法可运行源码,聚焦九点标定与十二点标定两种主流方案,解决成像设备精确校准与空间映射中的参数提取问题。包体仅8KB,但结构精致,共3个文件:inscode脚本承载核心…

2026/10/18 15:13:59 阅读更多 →
会员变商家:ThinkPHP CMS插件实现申请、审核、开店全流程

会员变商家:ThinkPHP CMS插件实现申请、审核、开店全流程

简介:这是一份专为易优CMS电商平台打造的第三方商家(会员变商家)商城插件资源,主要面向易优CMS管理员、开发者以及期望通过开店创业的普通会员,用于解决平台商品供给单一、会员无法直接变现的问题。插件打通会员到商家…

2026/10/18 15:13:59 阅读更多 →
用Claude Code从零搭建宠物生命周期管理App全流程实测

用Claude Code从零搭建宠物生命周期管理App全流程实测

说实话,我一开始对这个标题是有点怀疑的——Claude Code 我也用过,写点小脚本、补个测试、改个样式都很顺手,但“从零搭建一个新项目”还带“全流程”,这跨度有点大。更别说要做一个宠物生命周期管理 App,涉及数据建模…

2026/10/18 15:12:58 阅读更多 →

最新新闻

Python金融风控建模实战:从WOE编码到评分卡落地

Python金融风控建模实战:从WOE编码到评分卡落地

简介:面向金融风控建模学习者,这份源码包聚焦大数据风控全流程,适合有志于信用评分、欺诈检测与风险预测的数据分析师或建模工程师。资源共一百零六个文件,包含四十个脚本、十九个模型、十六个样本数据、二十个可视化图表及三个示…

2026/10/18 16:16:27 阅读更多 →
HTML5调用手机摄像头拍照上传:兼容微信iOS/安卓的轻量方案

HTML5调用手机摄像头拍照上传:兼容微信iOS/安卓的轻量方案

简介:本资源是一套面向Web前端开发者与移动端H5项目实践者的完整拍照上传解决方案,聚焦HTML5在手机浏览器中调用摄像头、预览图片并上传至PHP后台的核心功能实现。资源包共22个文件,包含1个主入口HTML页面、1个核心JS脚本、1个PHP服务端接收脚…

2026/10/18 16:16:27 阅读更多 →
C#自托管WebApi:.NET Framework下不依赖IIS的HTTP服务实现

C#自托管WebApi:.NET Framework下不依赖IIS的HTTP服务实现

简介:这是一份面向C#中高级开发者与.NET桌面应用架构师的自托管WebApi实践项目,解决传统IIS部署依赖强、服务嵌入难、中小规模内部通信启动重等痛点。项目基于OWIN标准实现完全脱离IIS的轻量级HTTP服务宿主,内置FileController与Authorizatio…

2026/10/18 16:16:27 阅读更多 →
DevExpress VCL 18.1.6源码包安装编译与Delphi迁移实践指南

DevExpress VCL 18.1.6源码包安装编译与Delphi迁移实践指南

简介:DevExpress VCL 18.1.6 完整源码包,配套 DxAutoInstaller 自动安装器,面向使用 Delphi 7 至 Delphi 10.3 Rio 的桌面应用开发者。资源解决了在较新 IDE 中手动安装第三方组件库耗时易错的问题,尤其适合需要阅读底层实现、二次…

2026/10/18 16:16:27 阅读更多 →
Java桌面程序中SWT与JavaFX WebView嵌入ECharts的实战整合方案

Java桌面程序中SWT与JavaFX WebView嵌入ECharts的实战整合方案

简介:本资源是一套面向Java桌面应用开发者的SWT与JavaFX混合GUI工程实践案例,聚焦于在原生级界面中嵌入高性能网页渲染能力,解决Java传统桌面程序调用ECharts动态图表、实现Web数据可视化及大文件分片上传的集成难题。项目完整实现了SWT主窗口…

2026/10/18 16:16:27 阅读更多 →
从 APK/PCK 恢复完整 Godot 项目:gdsdecomp 上手与实战指南

从 APK/PCK 恢复完整 Godot 项目:gdsdecomp 上手与实战指南

从 APK/PCK 恢复完整 Godot 项目:gdsdecomp 上手与实战指南 【免费下载链接】gdsdecomp Godot reverse engineering tools 项目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp gdsdecomp(Godot RE Tools)是一个面向 Godot 引…

2026/10/18 16:15:27 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →