tcb app build
在本地构建声明式配置(cloudbaserc.json)中的本地构建项 —— hosting[] 与 app 两者都构建,生成部署所需产物。只构建不部署、不安装依赖。
语法
tcb app build [options]
本命令没有命令专属参数,通用参数见全局选项。不调用云 API,无需登录。
与 tcb deploy 配合
tcb app build # 本地构建 app 与 hosting[] 产物
tcb deploy # 上传产物并编排其余资源
行为说明
- 读取
cloudbaserc.json的app与hosting[],逐个解析构建命令(优先级:显式buildCommand>framework框架预设 >package.json依赖自动探测) - 构建顺序:先
app,再按声明顺序遍历hosting[] - 在各自
root目录本地执行构建命令 - 不执行
installCommand—— 依赖需提前自行安装(如npm install);检测到package.json声明依赖但缺少node_modules时会报错提示 - 纯静态项(无
buildCommand/framework: static)跳过构建 - 产物生成于各项的
outputDir;未配置时按构建配置推断(vite/vue→dist、react(CRA) →build、next→.next、angular→angular.json的outputPath) app.root与某个hosting[].root指向同一目录时只构建一次:先构建app,被跳过的项沿用app推出的构建命令并给出 warning。两项构建命令不同时,hosting[]上显式配置的那条会被忽略 —— 需要各自构建请把root分开配置- fail-fast:任一项构建失败立即中断,不继续构建其余项
app与hosting[]都未配置时只输出一条提示,不报错
命令对比
| 命令 | 构建 | 部署 | 依赖处理 |
|---|---|---|---|
tcb app build | 本地构建(app + hosting[]) | ❌ | 不安装,需用户自行安装 |
tcb deploy | ❌ 不构建(产物直传) | ✅ 编排全部资源 | 不处理 |
tcb app deploy | 云端构建(app 字段) | ✅ 仅单个应用 | 云端安装依赖 |