Anyon e634118a22 refactor(plugin): 迁移 v8 插件化组件体系
将 v6 中直接放在本地 app 的后台与微信能力迁移为 v8 插件组件,并把运行时基础能力沉淀到独立插件包。

主要内容:

- 新增 think-library、system、worker、static、install 等基础插件包。

- 新增 account、payment、wechat-client、wechat-service、wemall、wuma 等业务插件包。

- 移除 v6 的 app/admin 与 app/wechat 本地应用实现,改由插件分发接管。

- 将 Helper 能力彻底并入 System,统一为 plugin\system\helper\* 命名空间。

- 同步插件迁移发布清单与根 route 占位,保证安装发布流程可复现。
2026-05-08 15:30:46 +08:00

1.6 KiB

安装工具接口

接口标准

  • 接口类型:命令行接口 + Composer 生命周期接口
  • 调用入口:php think xadmin:install 或 Composer 自动安装钩子
  • 返回形式:控制台文本输出
  • 执行链路:先执行 service:discover,再执行 xadmin:publishxadmin:publish --migrate
  • 迁移规则:只有声明了 composer.json > extra.xadmin.migrate 的插件才会自动执行数据库迁移
  • 首装规则:首次 composer install 只发布资源和迁移脚本,不直接执行数据库迁移
  • 状态文件:vendor/.plugin-state.json

接口列表

xadmin:install

  • 说明:显式安装当前项目,完成服务发现、插件资源发布,并对已声明 extra.xadmin.migrate 的插件自动执行数据库迁移
{
  "force": false, // 发布时是否覆盖已存在文件
  "migrate": false // 是否强制执行所有已发布迁移,即使当前未命中自动迁移条件
}

composer install / update / remove / dump-autoload

  • 说明:由 zoujingli/think-plugs-install Composer plugin 自动触发安装链路;首次安装只执行发布,后续新增或变更的插件如果声明了 extra.xadmin.migrate,会自动执行数据库迁移;未声明时仅输出提示
{
  "allow_plugin": true, // 根项目 composer.json 需要允许 zoujingli/think-plugs-install 作为 Composer plugin 运行
  "auto_publish": true, // 自动执行 service:discover + xadmin:publish
  "auto_migrate": true, // 仅对非首次安装且本次变更中声明了 extra.xadmin.migrate 的插件自动执行
  "initial_install": false // 首次安装时固定为只发布不迁移
}