# 生成 latest.json 脚本使用说明 ## 概述 `generate-latest-json.js` 脚本用于生成 Tauri 更新器所需的 `latest.json` 文件。该文件包含版本信息、更新说明、下载链接和签名信息。 ## 使用方法 ### 基本用法 ```bash npm run generate-latest -- --base-url https://your-server.com/releases ``` ### 完整示例 ```bash npm run generate-latest -- --base-url https://your-server.com/releases --version 0.0.6-beta.6 --notes "修复了已知问题" ``` ### 参数说明 - `--base-url` (必需): 更新文件的基 URL,例如 `https://your-server.com/releases` - `--version` (可选): 版本号,如果不提供,将从 `tauri.conf.json` 读取 - `--notes` (可选): 更新说明,支持 Markdown 格式 ## 工作流程 1. **构建应用**: 首先确保已经构建了应用 ```bash npm run build ``` 2. **生成 latest.json**: 运行脚本生成 `latest.json` 文件 ```bash npm run generate-latest -- --base-url https://your-server.com/releases ``` 3. **上传文件**: 将以下文件上传到服务器: - 安装包文件(如 `.exe`, `.dmg`, `.AppImage`) - 签名文件(`.sig`) - `latest.json` 文件 ## 文件结构 生成的 `latest.json` 文件格式: ```json { "version": "0.0.6-beta.6", "notes": "版本 0.0.6-beta.6 更新", "pub_date": "2025-01-15T10:00:00.000Z", "platforms": { "windows-x86_64": { "url": "https://your-server.com/releases/CS工具箱_0.0.6-beta.6_x64-setup.exe", "signature": "签名内容..." } } } ``` ## 注意事项 1. **构建产物**: 脚本会自动查找构建产物目录中的文件,确保已经完成构建 2. **签名文件**: 如果存在 `.sig` 文件,脚本会自动读取并包含在 `latest.json` 中 3. **版本匹配**: 脚本会根据版本号匹配文件,确保文件名包含版本号 4. **平台支持**: 脚本支持 Windows、macOS 和 Linux 平台 ## 故障排查 ### 未找到构建产物 如果脚本提示"未找到任何构建产物": 1. 确保已经运行 `npm run build` 完成构建 2. 检查 `src-tauri/target/release/bundle` 目录是否存在 3. 确认构建产物文件名包含版本号 ### 签名文件缺失 如果签名文件缺失: 1. 确保设置了 `TAURI_SIGNING_PRIVATE_KEY_PASSWORD` 环境变量 2. 确保 `tauri.conf.json` 中 `createUpdaterArtifacts` 设置为 `true` 3. 重新构建应用 ### 上传到服务器 将以下文件上传到服务器: - 安装包文件 - 签名文件(`.sig`) - `latest.json` 文件 确保服务器上的 URL 路径与 `--base-url` 参数匹配。