- full →
World Monitor - tech →
Tech Monitor
- full:
src-tauri/tauri.conf.json - tech:
src-tauri/tauri.tech.conf.json
前置条件
- Node.js + npm
- Rust 工具链
- 操作系统原生 Tauri 构建前置条件:
- macOS:Xcode 命令行工具
- Windows:Visual Studio Build Tools + NSIS + WiX
node_modules/.bin 中的本地 tauri 二进制文件;在执行 npm ci 之后,无需在运行时通过 npx 下载包。
如果本地 CLI 缺失,scripts/desktop-package.mjs 会立即失败,并显示明确的 npm ci 修复提示信息。
网络预检与修复
在 CI 或托管网络中运行桌面打包之前,请验证连接性和代理配置:- 内部 npm 镜像/代理。
- 内部 Cargo 稀疏索引/注册表镜像。
- 预先打包的 Rust crates(
src-tauri/vendor/)+ Cargo 离线模式。 - 在构建之前还原所需包输入的 CI 制品/缓存策略。
docs/TAURI_VALIDATION_REPORT.md。
打包命令
查看脚本用法/帮助:macOS(.app + .dmg)
Windows(.exe + .msi)
- macOS:
app,dmg - Windows:
nsis,msi
Rust 依赖模式(在线与受限网络)
在src-tauri/ 中,项目支持两种打包路径:
1) 标准在线构建(默认)
使用常规 Cargo 行为(crates.io):2) 受限网络构建(预打包或内部镜像)
src-tauri/.cargo/config.toml 中定义了一个可选的打包源。要使用它,首先在具有注册表访问权限的机器上准备打包好的 crates:
- 一次性 CLI 覆盖(不修改文件):
- 本地覆盖文件(推荐用于 CI/可重复的离线作业):
src-tauri/vendor/ 作为制品发布,并在受限网络构建之前还原它。如果您的组织使用内部 crates 镜像而非打包方式,请在 CI 专用 Cargo 配置中将 source.crates-io.replace-with 指向该镜像,并运行相同的构建命令。
可选的签名/公证钩子
默认情况下使用未签名打包。 如果环境变量中存在签名凭据,Tauri 将在相同的打包命令期间自动签名/公证。macOS Apple 开发者签名 + 公证
在打包之前设置(Developer ID 签名):Windows Authenticode 签名
在打包之前设置(PowerShell):区分变体的输出(名称/图标)
- Full 变体:
World Monitor/world-monitor - Tech 变体:
Tech Monitor/tech-monitor
src-tauri/tauri.conf.json→World Monitor/world-monitorsrc-tauri/tauri.tech.conf.json→Tech Monitor/tech-monitor
bundle.icon,并将每个变体指向专用的图标资源。
输出位置
制品生成在以下位置:app/→ macOS.appdmg/→ macOS.dmgnsis/→ Windows.exe安装程序msi/→ Windows.msi安装程序
发布检查清单(干净机器)
- 构建所需的 OS + 变体包。
- 将制品移动到干净机器(或全新的 VM)。
- 安装/启动:
- macOS:挂载
.dmg,将应用拖到”应用程序”,然后启动。 - Windows:运行
.exe或.msi,从”开始”菜单启动。
- macOS:挂载
- 验证启动:
- 应用窗口无崩溃地打开。
- 地图视图正常渲染。
- 初始数据加载路径不会出现致命错误。
- 验证变体标识:
- 窗口标题和产品名称与预期变体匹配。
- 如果启用了签名:
- 在 OS 对话框/属性中验证代码签名元数据。
- 在 macOS 上验证公证/Gatekeeper 接受情况。
