| 场景 | 核心模块 |
|---|---|
| 微信公众号 | weixin-java-mp |
| 微信小程序 | weixin-java-miniapp |
| 微信支付 | weixin-java-pay |
| 企业微信 | weixin-java-cp |
| 微信开放平台/第三方平台 | weixin-java-open |
| 视频号/微信小店 | weixin-java-channel |
多个模块并用时优先使用 com.github.binarywang:wx-java-bom。Spring Boot 集成从 spring-boot-starters 选择;Solon 集成从 solon-plugins 选择。只有多个独立微信应用配置时才选择名称含 multi 的 Starter 或插件。
- 公众号、小程序和企业微信的消息回调、token 与加解密配置彼此独立;不要因同属一个公司而复用不兼容的凭据或配置对象。
- 企业微信的多应用应使用独立的
WxCpConfigStorage与WxCpServiceImpl;Wiki 明确指出复用 token、AES key 和 URL 会造成安全边界问题。 - 支付能力通常与 MP、MiniApp 或 Open 同时使用:前者处理业务身份和消息,
weixin-java-pay处理商户签名、证书与支付回调。 - 视频号/微信小店接口属于
weixin-java-channel;不要误归入 MP 或 Pay。 - 当能力在 MP 与 Open 等模块可能重叠时,按授权主体、官方 API 域和回调场景选择,不要只按“移动端”或“登录”字样判断。先在当前源码和 Issue 中确认覆盖状态,并标注“已确认 / 待查 / 需自行调用底层接口”。
- BOM 适合同时使用多个 WxJava 模块。若项目还导入 Spring Boot 等上游 BOM,升级后执行
mvn help:effective-pom与mvn dependency:tree;历史 #4058 表明依赖管理顺序可能影响 Spring Data Redis 等依赖。