Solon v3.5 更新与兼容说明
v3.5.0-rc 变更说明:
- 添加 solon-flow FlowContext:exchanger 方法(可获取 FlowExchanger 实例)
- 修复 solon-net-httputils OkHttpResponse:contentType 获取错误的问题(优化与 mcp 的兼容性)
- 修复 solon-net-httputils OkHttpUtils 适配重定位后 req-body 数据不能重读的问题
- liquor 升为 1.6.2 (兼容 arm jdk),支持单句代码自动补 ';' 号(为 solon-flow 增强容错能力)
兼容说明
有兼容问题:
提醒:
- 插件 solon-ai-mcp 协议升为 MCP_2025-03-26(支持 streamable、annotation、outputSchema 等特性)
- 插件 solon-ai-mcp channel 取消默认值(之前为 sse。文档已调整),且为必填。升级后,要补一下这个配置
- 最近还新增了 solon-statemachine 插件(欢迎试用)
建议:
- 使用
solon-server-*
插件替代solon-boot-*
(原先的 boot 是 server 启动的意思,很多人误会把 solon-boot 与 springboot 对应起来。现标为弃用) - 相对的:solon 与 springboot 对标;solon cloud 与 spring cloud 对标;solon ai 与 spring ai 对标
具体更新
- 新增 solon-ai-mcp MCP_2025-03-26 版本协议支持
- 插件 solon-flow 第四次预览
- 插件 solon-flow stateful 第三次预览
- 添加 solon-flow FlowDriver:postHandleTask 方法
- 优化 solon-net-httputils HttpUtils 与 HttpUtilsFactory(部分功能迁到 HttpUtils) 关系简化
- 优化 solon-net-httputils OkHttpUtils 适配与 tlsv1 的兼容性
- 优化 solon-net-httputils JdkHttpResponse:bodyAsString 的编码处理(没有 ContentEncoding 时,优先用 charset 配置)
- 优化 solon-expression SnelEvaluateParser:parseNumber 增强识别 "4.56e-3"(科学表示法)和 "1-3"(算数)
- 优化 solon 启动后 Lifecycle:postStart 可在加入时直接执行
- 调整 solon-flow FlowContext 拆分为:FlowContext(对外) 和 FlowExchanger(对内)
- 调整 solon-flow FlowContext 移除 result 字段(所有数据基于 model 交换)
- 调整 solon-flow FlowContext get 改为返回 Object(之前为 T),新增 getAs 返回 T(解决 get 不能直接打印的问题)
- 调整 solon-flow 移除 StatefulSimpleFlowDriver 功能合并到 SimpleFlowDriver(简化)
- 调整 solon-flow 新增 stateless 包,明确有状态与无状态这两个概念(StatelessFlowContext 更名为 StatefulFlowContext)
- 调整 solon-flow FlowStatefulService 接口,每个方法的 context 参数移到最后位(保持一致性)
- 调整 solon-flow 新增 StatefulSupporter 接口,方便 FlowContext 完整的状态控制
- 调整 solon-flow StateRepository 接口的方法命名,与 StatefulSupporter 保持一致性
- 调整
solon-boot-*
插件(标为弃用) 更名为solon-server-*
- 调整
solon.boot
包名(相关工具标为弃用) 更名为solon.server
- 调整 solon-ai-mcp mcp 协议升为 MCP_2025-03-26(支持 streamable、annotation、outputSchema 等特性)
- 调整 solon-ai-mcp channel 取消默认值(之前为 sse),且为必填(利于协议升级过度,有明确的开发时、启动时提醒)
- 修复 solon-net-httputils OkHttpResponse:contentType 获取错误的问题
- 修复 solon-net-httputils OkHttpUtils 适配重定位后 req-body 数据不能重读的问题
- liquor 升为 1.6.2 (兼容 arm jdk)