Build、部署与运行交付
Build 将当前 app 的 Page Method、Graph、自定义代码和 PLC 控制逻辑准备成目标机可运行的产物。Build 不会启动 app;Start 和 Debug 会在需要时完成 Build、部署并启动。
何时查这页
- 不确定保存后是否还要 Build。
- Build 按钮不可用或显示错误状态。
- 本机正常,但远端 Runtime target 无法启动。
- 需要交付前的最小检查清单。
实际入口
- Build:编辑器顶栏,运行目标选择器右侧。
- Start / Debug / Stop:同一顶栏运行控制组。
- Problems:编辑器底部,汇总 Page、Graph、Script 和 PLC 诊断。
- Runtime target:Build 左侧选择器;决定产物面向哪台目标机。
哪些修改需要 Build
| 修改内容 | 手动 Build 建议 | 进入运行态的方法 |
|---|---|---|
| Page 布局、widget 属性和固定文案 | 通常不需要单独 Build | 保存;正式运行前用 Start/Debug 验收 |
| Page Method | 建议 Build 或直接 Start/Debug | 生成并验证页面方法产物 |
| Graph | 需要 | Build 后重新 Start/Debug |
| 自定义 Script Object | 需要 | Build 后新类型和方法才可用 |
| PLC POU、Tag、Task 或 IO 映射 | 需要 | 顶栏统一 Build 后重新 Start/Debug |
| Variables、Queries、Recipes、Object 属性 | 不属于编译项 | 保存后停止并重新启动需要新配置的 app |
| Motion、Vision、Safety 配置 | 通常不单独编译 | 保存后重新 Start、Debug 或按模块重新 Connect |
不确定时,可以在 Stopped 状态执行一次 Build;它会统一检查当前 app 的可运行产物。
标准流程
只构建,不启动
- 保存所有打开的 Page、Graph、Script 和 PLC 资源。
- 确认顶栏 Runtime target 是计划交付的目标。
- 如果 app 正在 Running、Debugging、Paused 或 Starting,先 Stop。
- 点击 Build。
- 等待“构建成功”提示,并检查 Problems 没有错误。
远端目标会使用目标机报告的平台生成匹配产物。不要先按本机平台构建,再假设产物能在另一种平台直接运行。
构建并运行
- 在 Stopped 状态选择 Start 或 Debug。
- Theseus 会准备当前 app、部署到所选 Runtime target,并提交启动任务。
- 等待状态进入 Running、Debugging,或 Debug 命中断点后的 Paused。
- 在运行页、Console、Problems 和设备反馈中验证。
修改运行中的 app
保存设计文件不会替换正在运行的实例。使用以下闭环:
- Stop。
- 保存并 Build。
- Start 或 Debug。
- 按正常、边界、异常和恢复场景复测。
Build 状态
| 表现 | 含义 | 下一步 |
|---|---|---|
| Build 可用 | app 处于可修改运行产物的状态 | 可以构建 |
| Building | 正在生成产物 | 等待完成,不要重复点击 |
| 构建成功提示 | 当前产物已生成 | 检查 Problems,再运行验证 |
| Build 红色或带错误提示 | 自定义代码或 PLC 构建失败 | 打开 Problems |
| Build 不可用 | app 正在运行、调试、暂停、启动或停止 | 先 Stop 并等待 Stopped |
诊断顺序
- 打开 Problems,先处理 Error,再评估 Warning。
- 双击问题定位 Page、Graph、Script 或 PLC 资源。
- 修复并保存,确认相关实时诊断消失。
- 重新 Build。
- Build 成功后再 Start 或 Debug;不要把“能编译”当成“现场行为正确”。
常见分类:
| 现象 | 优先检查 |
|---|---|
| Page Method 语法或引用错误 | 当前 Page、方法参数、QX 引用 |
| Graph 节点或端口错误 | 节点类型、连线、控制分支、对象方法 |
| 自定义 Object 编译错误 | Script 语法、类型和引用 |
| PLC 构建错误 | POU 逻辑、Tag 地址、Task 绑定和拓扑 |
| 远端启动失败 | 当前目标、目标 RID、部署权限和目标许可证 |
| Build 成功但行为错误 | 业务顺序、设备状态、配置版本和测试条件 |
成功表现
- Build 完成且 Problems 没有阻止运行的错误。
- 所选 Runtime target、目标平台和许可证符合交付计划。
- Start/Debug 使用本次修改后的 Page、Graph、Object 和 PLC 行为。
- 停止、异常和恢复路径都经过验证。
- 最终变更已通过 Git 提交或 ZIP 备份。
常见问题
为什么 Build 按钮不可用?
运行实例仍处于 Running、Debugging、Paused、Starting、Stopping,或 Error 仍占有已加载实例。先 Stop,等待 Stopped。
为什么只改 Page 也在 Start 时看到构建阶段?
Start/Debug 会统一准备可部署包并校验 Page Method 等运行内容,即使你没有手动点击 Build。
Build 成功,运行页还是旧行为
确认已经重新 Start/Debug,且查看的是当前 Runtime target 上的 app,而不是另一个目标或旧浏览器页面。
远端构建失败,本机却成功
远端可能使用不同操作系统或架构。以远端目标的诊断为准,检查 PLC、自定义依赖和目标环境能力。
AI 可以怎么帮
引用 Problems 中的错误和对应文件,限制修改范围:
分析当前 Build 失败。按 Page Method、Graph、Script、PLC 分类,只修复会阻止构建的错误,不改变业务顺序。完成后列出修改文件、构建结果和仍需现场验证的假设。
AI 可以修复候选实现和整理诊断,但不能证明设备动作、安全回路或生产节拍正确。
必须人工确认
- Build 面向正确 Runtime target,且没有在错误机器上部署。
- 诊断修复没有改变工艺语义、设备地址或 Safety。
- Start/Debug、异常和恢复测试满足交付标准。
- 生产切换、停机和回退方案已经批准。