OpenSolon 开源框架!(也称:Solon)
OpenSolon 是新一代,Java 企业级应用开发框架。从零开始构建(No Java-EE),有灵活的接口规范与开放生态。采用商用友好的 Apache 2.0 开源协议,是“杭州无耳科技有限公司”开源的根级项目,是 Java 应用开发的生态基座(可替换美国博通公司的 Spring 生态)。
- 追求: 快速、小巧、简洁
- 提倡: 克制、高效、开放
7年开源时间,累计代码提交1.6万次 ,近半年下载量1200万次。
同时支持运行时环境(不基于 java-ee 构建,所以可以同时兼容):
- java8, java11, java17, java21, java25, java26
目前有几个主要的项目仓库:
| 代码仓库 |
描述 |
| /opensolon/solon |
Solon ,主代码仓库 |
| /opensolon/solon-examples |
Solon ,官网配套示例代码仓库 |
| |
|
| /opensolon/solon-expression |
Solon Expression ,代码仓库 |
| /opensolon/solon-flow |
Solon Flow ,代码仓库 |
| /opensolon/solon-ai |
Solon Ai ,代码仓库 |
| /opensolon/solon-cloud |
Solon Cloud ,代码仓库 |
| /opensolon/solon-admin |
Solon Admin ,代码仓库 |
| /opensolon/solon-integration |
Solon Integration ,代码仓库 |
| /opensolon/solon-java17 |
Solon Java17 适配仓库(base java17) |
| /opensolon/solon-java25 |
Solon Java25 适配仓库(base java25) |
| |
|
| /opensolon/solon-gradle-plugin |
Solon Gradle ,插件代码仓库 |
| /opensolon/solon-idea-plugin |
Solon Idea ,插件代码仓库 |
| /opensolon/solon-vscode-plugin |
Solon VsCode ,插件代码仓库 |
有什么特点(相对 Java Spring 方案)?
OpenSolon 对国产算力非常友好,对 cpu 和 memory 的需求远低于同类方案。
| 特点 |
描述 |
| 更高的计算性价比 |
并发高 700%;内存省 50% |
| 更快的开发效率 |
代码少;入门简单;启动(或调试重启)快 10倍 |
| 更好的生产与部署体验 |
打包小 90% |
| 更大的兼容范围 |
非 java-ee 架构;同时支持 java8 ~ java26,graalvm native image |
最新的 techempower (第三方知名测试平台)测试数据:
项目架构示意图(全场景应用开发支持)

/solon v3.10.4 更新说明
- 新增 solon-serialization-javabin 插件(统一 JavabinSerializer 管理)
- 添加 solon-cache-spymemcached MemCacheService.cacheKeyHead 方法(修改缓存头)
- 添加 solon-cache-redisson RedissonCacheService.cacheKeyHead 方法(修改缓存头)
- 添加 solon-cache-jedis RedisCacheService.cacheKeyHead 方法(修改缓存头)
- 添加 solon JavaUtil.IS_MAC 字段
- 添加 solon MultiMap.flags 机制,更好的支持 args 解析
- 添加 solon ParamWrap.getMethodWrap 属性
- 添加 solon-parent maven-surefire-plugin 插件版本管理
- 添加 nami NamiFilter(替代 Filter)更好表意
- 调整 solon-sessionstate-jedis 启用新的 JavabinSerializer
- 调整 solon-cache-jedis 启用新的 JavabinSerializer
- 调整 RunUtil 恢复 parallel 方法(之前标为弃用)
- 调整 Log4j2Plugin,LogbackPlugin ,取消 doLoadUrl 重载
- 修复 solon-config-snack3 不能通过属性反序列化外部扩展包里的类问题
- 修复 solon-config-snack4 不能通过属性反序列化外部扩展包里的类问题
- 修复 solon-net-httputil OkHttp 请求体封装问题,转为对应编码字节流
- reactor-core 升为 3.8.5
- redisx 升为 1.8.5
- eggg 升为 1.0.12
- snack4 升为 4.0.46
- log4j 升为 2.25.4
/solon-ai v3.10.4 更新说明
solon-ai 发布智能体综合示例项目(可直接用于生产或定制):
具体更新:
- 添加 solon-ai-agent 动态切换 llm 支持(支持不同会话,在各自请求时切换)
- 添加 solon-ai-harness 重试次数配置支持
- 添加 solon-ai-harness lsp 功能
- 添加 solon-ai-harness HarnessProperties.disallowedTools 配置支持(全局禁用工具配置)
- 添加 solon-ai-harness HarnessProperties.agentPools(子代理池) 配置支持
- 添加 solon-ai-harness HarnessProperties.systemPrompt 配置支持(替代之前的 AGENT.md 预设处理,由外部定制)
- 优化 solon-ai-core embedding 配置默认选项的能力(之前只能在请求时添加)
- 优化 solon-ai-core ChatRequestDesc.internalStream 添加流接收超时处理(避免因 llm 服务原因一直卡着)
- 优化 solon-ai-dialect-anthropic anthropic 方言的异常兼容处理
- 优化 solon-ai-dialect-openai openai-response 方言的异常兼容处理
- 优化 solon-ai-agent 中断传递处理
- 优化 solon-ai-agent ActionTask onAction 日志
- 优化 solon-ai-agent retrying 中断处理(这前的 task 内部的 stream 可能会中断传递)
- 优化 solon-ai-agent AgentSession.updateSnapshot 添加锁机制
- 优化 solon-ai-skill-lsp 重构 LspSkill 实现(之前名为 LspTool)
- 优化 solon-ai-skill-cli ExpertSkill 引导词
- 优化 solon-ai-skill-cli TerminalSkill 安全引导词
- 优化 solon-ai-skill-sys 从 cli 同步 ProcessExecutor
- 优化 solon-ai-harness HarnessEngine 扩展机制(支持为子代理扩展,通过名字识别)
- 调整 solon-ai-harness ReActAgentExtension 更名为 ReActAgentExtension
- 调整 solon-ai-harness 切换 llm 的机制,并取消 switchMainModel 方法(有自由的机制了)
- 调整 solon-ai-harness TerminalSkillProxy 转到 solon-ai-skill-cli
- 修复 solon-ai-skill-toolgateway ToolGatewaySkill call_tool 不能传递 toolContext 的问题
- 修复 solon-ai-core AbstractChatDialect reasoning_field_name 可能传递中断的问题