Skip to content

CLI 参考

comp-hub CLI 提供了一套命令行工具,帮助您管理本地开发服务。支持多项目同时运行,每个项目独立端口互不干扰。

CLI 提供了三个二进制名称 —— comphubchcomp-hub,指向同一个程序。以下命令用哪个名字都可以,例如 ch statuscomp-hub -p 8080

命令概览

命令说明
comphub启动当前项目的开发服务
comphub status查看 master 状态和所有运行中的项目
comphub stop <hash>停止指定项目
comphub stop --all停止所有项目
comphub kill关闭 master 进程
comphub fix修复常见问题(清理残留运行时文件等)

comphub — 启动服务

在项目目录下执行,启动后即可在浏览器中预览和下载组件。

bash
comphub

可选参数:

参数简写类型默认值说明
--port-pnumber5478启动端口
--dir-dpath"./"资源目录相对路径
--log-level-lstring"error"日志级别:debug, info, warn, error

| --version | -v | - | - | 显示版本号 | | --help | -h | - | - | 显示帮助 |

--port 仅在尚无 master 进程运行时生效。若 master 已在运行,CLI 会复用它并提示 -p 被忽略;确实需要换端口请先执行 comphub kill

示例:

bash
# 默认端口启动
comphub

# 指定端口
comphub -p 8080

# 指定目录
comphub -d ./src

启动成功后会显示项目信息和访问地址:

✓ comp-hub v0.44.11

   ██████╗  ██████╗  ███╗   ███╗ ██████╗       ██╗  ██╗ ██╗   ██╗ ██████╗
  ██╔════╝ ██╔═══██╗ ████╗ ████║ ██╔══██╗      ██║  ██║ ██║   ██║ ██╔══██╗
  ██║      ██║   ██║ ██╔████╔██║ ██████╔╝      ███████║ ██║   ██║ ██████╔╝
  ██║      ██║   ██║ ██║╚██╔╝██║ ██╔═══╝       ██╔══██║ ██║   ██║ ██╔══██╗
  ╚██████╗ ╚██████╔╝ ██║ ╚═╝ ██║ ██║           ██║  ██║ ╚██████╔╝ ██████╔╝
   ╚═════╝  ╚═════╝  ╚═╝     ╚═╝ ╚═╝           ╚═╝  ╚═╝  ╚═════╝  ╚═════╝


  Version  0.44.11
  Project  D:\project\housing\vue2
  Hash     94525912
  Port     5478

  URL      http://localhost:5478/94525912/main/

  ─────────────────────────────────────────────

  comphub status                View all projects
  comphub stop    94525912      Stop current project
  comphub stop    --all         Stop all projects
  comphub kill                  Shutdown master

用浏览器打开 URL 即可进入平台。

启动时的行为

  • 版本检查:启动前 CLI 会向远端查询当前版本是否仍可使用。若当前版本被列为必须升级,启动会直接中止并提示 comp-hub must be upgraded before it can start,请先执行 npm install comp-hub@latest -g 再启动;若只是有新版本,则仅打印提示、正常启动。
  • 日志流:banner 之后,CLI 会以 SSE 实时输出本项目 MidwayJS 子进程的日志。按 Ctrl+C 结束,此时会自动向 master 注销该项目。

comphub status — 查看状态

查看当前有哪些项目正在运行。

bash
comphub status

输出示例:

● Master Status

  Status      ● running
  Version     0.44.11
  Uptime      2m
  Projects    2

  ▸ Registered Projects (2):
  ────────────────────────────────────────────────────────
    hash     94525912
    path     D:\project\housing\vue2
    url      http://localhost:5478/94525912/main/
  ────────────────────────────────────────────────────────
    hash     a3f82109
    path     D:\project\housing\vue3
    url      http://localhost:5478/a3f82109/main/
  ────────────────────────────────────────────────────────

如果没有服务在运行:

✗ Master service is not running

comphub stop — 停止项目

停止一个或全部正在运行的项目,不影响其他项目。

bash
# 停止指定项目(hash 可通过 status 命令查看)
comphub stop <hash>

# 停止所有项目
comphub stop --all

示例:

bash
# 停止 hash 为 94525912 的项目
comphub stop 94525912

# 一次性停止所有项目
comphub stop --all

comphub kill — 关闭全部服务

关闭所有项目和服务。

bash
comphub kill

执行后 master 进程和所有已注册项目都会被终止。如需重新启动,再次执行 comphub 即可。


comphub fix — 修复常见问题

清理残留的运行时文件,修复其他常见问题:

bash
comphub fix

适用于以下场景:

  • 上次关闭时残留进程文件,导致新的启动失败
  • 需要重置本地运行时状态

多项目同时运行

不同的项目可以同时启动,互不影响:

bash
# 终端 1:启动项目 A
cd /path/to/project-a
comphub

# 终端 2:启动项目 B
cd /path/to/project-b
comphub

# 查看所有项目
comphub status

每个项目会分配到独立的端口,通过不同的 URL 访问。

用户上传的组件遵循开源协议