Solon v3.7 更新与兼容说明
兼容说明
这个版本默认依赖包(主要是指 solon-lib 和 solon-web ),配置增强和序列化的插件由 snack3 切换为 snack4 (snack3 的适配仍可使用)
兼容问题1:
snack3与snack4并不兼容,但是可以共存(部分类名相同,要注意包名的区分)。snack3的类包名为:org.noear.snack.*,maven依赖包为:org.noear:snack3snack4的类包名为:org.noear.snack4.*,maven依赖包为:org.noear:snack4
- 如果要继续使用
snack3- 排除
solon-config-snack4和solon-serialization-snack4 - 引入
solon-config-snack3和solon-serialization-snack3
- 排除
- 如果已使用别的序列化插件
- 要排除
solon-serialization-snack4(之前是排除solon-serialization-snack3)
- 要排除
snack3 用得好好的,为什么要换 snack4 ?
- 首先要说明一下,solon 是个很开放的架构基座。也可以完全不用
snack3 - 那为什么要换?
snack3的架构陈旧,扩展无力。无法作为下一代 Solon v4.0 的伴侣。 - 为什么要用
snack?,因为可以更好的为 Solon 提供定制响应。 snack4由 AI 协助,历时半年重构完成。并通过了已有的 snack3 和 solon 相关单测。
兼容问题2:
- 所有
solon.xxx和nami.xxx的依赖包不再发布(v2.9 时声明弃用),请改用solon-xxx风格的包 - 如果有第三方包仍依赖
solon.xxx,可排除后引入对应的solon-xxx
具体更新
- 升级 snack3 切换为 snack4
- 新增 solon-config-snack3 插件
- 新增 solon-config-snack4 插件
- 调整 solon-config-plus 标为弃用,由 solon-config-snack3 或 solon-config-snack4 替代
- 启用 eggg 作为类元信息构建机制(泛型传递能力增强)
- 升级 mcp-java-sdk 为 0.14.x???
- redisx 升为 1.8.0(snack3 切换为 snack4)
- snack4 升为 4.0.5
- wood 升为 1.4.0
快捷组合包调整情况(如果有排除,别搞错了):
| 快捷组合包 | 调整情况 |
|---|---|
| solon-lib | 使用 solon-config-snack4 替代 solon-config-snack3 |
| solon-web | 使用 solon-serialization-snack4 替代 solon-serialization-snack3 |
关于配置的几个插件说明(solon 是个很开放的架构基座):
| 插件 | 描述 | 备注 |
|---|---|---|
solon-config-yaml | 用于加载 yaml 和 json 的属性配置 | |
solon-config-snack3 | 提供 @Inject("${xxx}") 和 @BindProps("xxx") 属性注入或填充支持 | v3.7.0 后弃用 |
solon-config-snack4 | 提供 @Inject("${xxx}") 和 @BindProps("xxx") 属性注入或填充支持 |