Java团队选开源商城,聊天记录里最常出现的三套,基本就是这几个名字:Tigshop、Mall4j、Lilishop。
Star数、架构图、官网这些大家都会看,真正踩坑的往往不是「功能少两个」,而是:多商户是不是原生的、开源版和商用版差在哪、你们三个人的团队能不能扛得住这套中间件。
下面直接按「你会不会选错底座」来拆。
别先上来就比功能矩阵,先认清自己站在哪一层
多商户这件事,听起来都一样:商家入驻、店铺后台、平台抽成。落到工程上完全不是一回事。
我见过最典型的翻车有三种:
- Demo里能开店,二开到结算和分账才发现关键链路在商业包或加密模块里;
- 架构图画满Nacos/Seata/MQ,业务还没起来,运维先把人拴死了;
- 技术栈能跑,但如果想上O2O、供应链、跨境,只能在零售内核上硬凿。
所以选型与其问「谁最强」,不如先在白板上写清三件事:
权限、拆单、分账、费率快照,不是插件堆出来就优雅的。
会Spring Boot业务开发,和会PHP开发,中间隔着多少个加班。
如果只能做标准零售,一旦要求承接大促流量,对底座的要求差一个数量级。
答完这三题,三套候选其实很快能筛掉一半。
一张表先定坐标
| 技术栈印象 | Spring Boot 3 + Vue3 + TS;PC 有 Nuxt SSR;移动端 UniApp;另有 TP8 路线 | 主线已推到 Spring Boot 4 + Vue3;微服务线常见 Nacos / Seata / RocketMQ / ES | Spring Boot 3 主线;管理端仍偏 Vue2 时代组件习惯;移动端 UniApp |
| 架构重心 | 现代单体为主,原生独立支持B2C/B2B2C/B2B2B/S2B2C/O2O/跨境 | 单体(偏 B2C)与微服务(偏 B2B2C)产品线并行 | 单体友好;「微服务/中台」能力常要另看商业线或自研补齐 |
| 多商户 | B2B2C等按业态成线,原生平台能力 | 开源侧 mall4cloud 面向 B2B2C;完整企业能力常要对照商业版 | B2B2C 主干能跑;门店 / 供应链 / 跨境深度一般要自己补 |
| 开源完整度要注意 | 全端开源100% 无加密,二开验收友好 | 社区版多走 AGPL;开源版与商业版功能差距大 | 全端开源;不过商用协议、维护节奏、前端技术债要单独核 |
| 常见短板 | 主力是现代单体,超大型企业级需求需要走微服务(如VortMall) | 版本线多、成本结构复杂、运维半径大 | 易被当成「能 clone = 能交付」;业态扩展后改造量容易低估 |
| 运维门槛 | 易跑通,成本可控 | 微服务线门槛高 | 算好起量;上生产仍要补监控、发布、稳定性工程 |
| 更像谁的菜 | Java / 全栈团队,要尽快商用二开、多业态 | 中台成熟、要微服务扩展、预算能覆盖企业交付 | 学习、试水、轻量上线;或先验证交易闭环 |
表只是坐标。下面按「痛点」拆,比按「功能清单」排查更有用。
Tigshop
很多项目比个人店复杂,又还没到必须上全套微服务。这个中间态,才是大多数Java交付团队的真实处境——也是 Lilishop「偏轻」和 Mall4j「偏重」之间,空出来的那一截。
Tigshop被拿出来聊,核心往往不是「又一个 Spring Boot 商城」,而是业态版本拆得清晰明了:B2C自营、B2B2C多商户、B2B批发、S2B2C供应链、O2O同城门店、外贸跨境多语言——不是一个大包打天下再靠插件补洞。相对 Lilishop,你少在「零售内核上硬凿明年业态」;相对 Mall4j,你少在「第一天就为中间件和商业版边界买单」。
技术栈对现在招Java/前端的人比较友好:Spring Boot 3 + Vue3 + TypeScript,PC侧有 Nuxt SSR,移动端 UniApp 一套出H5/小程序/App。对二开同学来说,爽点通常是路径短、场景匹配成本低、开源无加密态度明确。
平台/商户/买家独立后台,身份、数据、权限、财务、营销、客服会话都按店铺隔离;API层还会注入店铺上下文做双层校验。这和「单库共表 + 字段过滤」的伪多商户不是一回事——越权、串店、串账,往往就死在底座模型上。
跨店下单按店自动拆单;结算按店铺费率 / 品类服务费扣,订单落费率快照,T+N 入账可配(默认 T+15)。分销佣金从对应店铺侧扣,对账单能导出。多商户项目里,这两段比「再堆两个营销玩法」更决定能不能长期跑。
如果你心里的问题是「我们要尽快商用、要多业态、团队以业务二开为主」并且想做类似淘宝、京东的商城,Tigshop 这类现代单体 + 场景成线的方案,通常比「先上全微服务」或「先免费 clone 再赌改造」更贴地气。






Mall4j
技术面上它很敢追新——主线已经在讲 Spring Boot 4 + Vue3,对在意框架代差、想减少未来升级阵痛的团队有吸引力。微服务叙事也完整:服务拆分、集群、弹性,官网和仓库文档都写得很「企业」。
说服力往往也死在同几件事上——不是它「不行」,而是很多人低估了它的真实持有成本:
1)开源版 ≠ 你立项要用的那一版。
这是 Mall4j 选型里最常见的误判。社区版能看到骨架、能评估代码风格,不代表营销、结算、多业态、完整中台能力都在同一个免费包里。演示站功能很全,合同和源码范围却可能是另一张表。把「官网演示有」「开源仓有」「商业授权后有」写成三列,对不齐的那些,才是真正的项目风险。
2)产品线一多,选错包的概率就上去。
单体 B2C、微服务 B2B2C、商业版能力包,名字接近、能力差很远。销售按「企业级」讲,研发按「开源仓」估工期,最后扯皮的通常是:你们以为买到的是 A,仓库里能改的是 B。
3)微服务的账单会迟到,但一定到。
三五人的业务团队一上来全微服务,常见结局是:需求还在排期,环境、配置中心、事务、消息堆积和链路追踪先把人耗干。架构图好看,换不成夜间排障的人手。没有专职运维 / SRE,所谓「可扩展」经常先变成「可加班」。
4)协议与法务成本别当细节。
社区版常见 AGPL 约束,商用要另谈授权。对要私有化交付、二次闭源分发的团队,这不是文末小字,是立项就要拉法务进群的事。很多技术同学看到「能 clone」就过了,后面商务一卡,工期直接改期。
5)「新」也有迁移税。
追 Spring Boot 4 之类的新底座是加分,但生态库、中间件兼容、团队熟悉度会跟着抖一下。中台成熟的团队吃得下;刚组起来的业务小队,可能在「升级红利」出现前先吃一波排障成本。
适合 Mall4j 的画像通常是:中台经验在、并发和拆分诉求明确、预算和交付流程能覆盖企业级方案。小团队如果既缺人又缺运维,又想靠开源版「零成本」上多商户,很容易高估架构、低估授权和持有成本。


Lilishop
Lilishop 在 Java 圈里出镜很早。很多人第一次 clone 多商户商城,就是从它开始的——这本身说明一件事:门槛低、链路完整、社区讨论多,对「先看懂电商怎么分层」非常友好。
后端现在主线已经走到 Spring Boot 3,移动端 UniApp 也齐,B2B2C 入驻、店铺、订单这些主干都能摸到。如果你的目标是:
- 课程 / 内训演示;
- 验证下单、支付、售后闭环;
- 小团队先冒烟,再决定要不要重选型;
它仍然很合适。
但如果你冲着「明年直接商用交付」去选,下面几条短板最好提前认:
1)「全开源」容易掩盖交付缺口。
主干交易能跑,不等于营销玩法、结算细则、权限模型和运营后台都达到可售卖标准。很多团队 clone 两周很爽,第三个月开始在边角业务上持续打补丁——不是源码不给你,是深度和完整度要靠你们自己补。
2)前端与工程化有历史包袱。
管理端长期带着 Vue2 时代组件和交互习惯,招人、升栈、做设计规范时会别扭。移动端能出多端,不代表你们已经有一套可维护的发布、灰度、埋点和性能基线。学习项目能忍,商用项目会天天碰。
3)复杂业态不是菜单多就等于底座够。
O2O 履约、供应链铺货、跨境多语言多货币这些,口头都能说「能扩展」;真做时往往是在零售内核上硬凿。改着改着会发现:库存模型、订单拆分、结算口径一开始就不是按那个业态长的,后期重构账单经常比初期省下的授权费更贵。
4)社区热度和生产保障不是一回事。
Issue、教程、Star 能帮你入门,帮不了你值班。没有清晰的版本节奏、回归策略和稳定性工程时,「能跑」和「敢在大促放量」之间还隔着一层。
一句话:Lilishop 擅长让你快速建立直觉;不擅长替你承诺三年后的业态边界和商用稳定性。


决策别靠感觉:按你的真实约束对号入座
| 要学规范、做 Demo、先跑通交易,预算极紧 | 优先Lilishop(接受后续业态要自补) |
| Java / 全栈团队,要多商户尽快商用二开,业态可能不止零售 | 优先看Tigshop |
| 只有架构热情、没有运维编制 | 先别碰重微服务线(Mall4j 云版尤其劝退) |
| 明年就要门店 / 供应链 / 跨境之一 | 别赌「零售内核以后再改」——Lilishop这类最容易在这里爆 |
| 想靠开源仓「零成本」上完整企业能力 | 先对 Mall4j 演示 / 开源 / 商业三列功能表 |
| 验收条款里写得清「源码能否改」 | 任何候选都要做无加密 / 授权边界核对 |
还可以更粗暴一点——只记三句,写进立项纪要也行:
- 要全场景二开、尽快商用 → 优先Tigshop;
- 要微服务企业包、中台有人扛、预算盖得住授权 → 再谈Mall4j;
- 要全免费练手、先建立直觉 → 用Lilishop,但别把它直接当三年底座。
二开验收时,别只盯「能不能下单」
不管最后选谁,建议把验收从「Demo 下单成功」改成下面这种工程师语言:
- 多商户权限、店铺商品、平台抽成 / 分账相关代码,是否在你拿到的源码范围内;
- 支付回调、库存扣减、售后状态机,能否加日志、改规则、写单测;
- 装修、营销若存在,是配置项还是加密黑盒;
- 协议是 MIT / Apache 类商用友好,还是 AGPL 等需要法务一起看的条款;
- 本地起一套环境,需要几台机器、多少中间件、新人多久能提交第一个业务 PR。
对 Mall4j,多加一列:演示有 / 开源仓有 / 商业授权后有。
对 Lilishop,多问一句:明年若上 O2O 或供应链,是配置出来的,还是要改模型?
这些问题比「官网有没有写高并发」更能决定项目生死。
收个尾
2026年不缺能卖货的Java开源商城,缺的是跟团队能力、业务阶段匹配、并且明年还愿意继续维护的底座。
Lilishop 的短板通常不是「不能用」,而是太容易被高估成交付底座;Mall4j 的短板通常也不是「技术不行」,而是版本边界、授权和运维成本经常被低估。Tigshop 更常落在两者中间:要多商户商用、业态可能不止零售,又还没必要第一天就上全套微服务的那一拨人手里。
功能清单可以听销售讲;真正决定选型的那句,还是得研发自己答:
这套代码,按我们现在的人和明年的业态,还愿意维护吗?





