Solon v3.6.2

Solon v3.7 更新与兼容说明

</> markdown

兼容说明

这个版本默认依赖包(主要是指 solon-lib 和 solon-web ),配置增强和序列化的插件由 snack3 切换为 snack4snack3 的适配仍可使用)

兼容问题1:

  • snack3snack4 并不兼容,但是可以共存(部分类名相同,要注意包名的区分)。
    • snack3 的类包名为:org.noear.snack.*,maven依赖包为:org.noear:snack3
    • snack4 的类包名为:org.noear.snack4.*,maven依赖包为:org.noear:snack4
  • 如果要继续使用 snack3
    • 排除 solon-config-snack4solon-serialization-snack4
    • 引入 solon-config-snack3solon-serialization-snack3
  • 如果已使用别的序列化插件
    • 要排除 solon-serialization-snack4(之前是排除 solon-serialization-snack3

snack3 用得好好的,为什么要换 snack4

  • 首先要说明一下,solon 是个很开放的架构基座。也可以完全不用 snack3
  • 那为什么要换?snack3 的架构陈旧,扩展无力。无法作为下一代 Solon v4.0 的伴侣。
  • 为什么要用 snack?,因为可以更好的为 Solon 提供定制响应。
  • snack4 由 AI 协助,历时半年重构完成。并通过了已有的 snack3 和 solon 相关单测。

兼容问题2:

  • 所有 solon.xxxnami.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") 属性注入或填充支持