完整实现 Tauri + Vanilla JS 轻量级截图工具 Phase 1 - 项目搭建 - Tauri 2.x 项目初始化 - Vite 前端项目搭建 - 基础 UI 框架(CSS 变量、组件库) - 构建配置优化 Phase 2 - 核心截图功能 - 全屏/区域/窗口截图 - 截图预览和管理 - 文件命名和缩略图 - 全局快捷键集成 Phase 3 - 上传与存储 - 多图床上传(GitHub/Imgur/自定义) - 配置管理系统 - SQLite 数据库 Phase 4 - OCR 集成 - 云端 OCR(百度/腾讯云) - 插件管理系统 - 本地 OCR 插件(Go) - OCR 结果处理 Phase 5 - AI 分类系统 - Claude/OpenAI API 集成 - Prompt 模板引擎 - 模板管理界面 - 自动分类流程 Phase 6 - 历史记录与管理 - 图库视图(网格/列表) - 搜索与筛选 - 批量操作 - 导出功能(JSON/CSV/ZIP) Phase 7 - 打包与发布 - 多平台构建配置 - CI/CD 工作流 - 图标和资源 - 安装包配置 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
160 lines
2.6 KiB
Markdown
160 lines
2.6 KiB
Markdown
# 打包与发布指南
|
|
|
|
本文档介绍如何构建和发布 CutThenThink Lite 应用程序。
|
|
|
|
## 系统要求
|
|
|
|
### 通用要求
|
|
- Node.js 18+
|
|
- npm 或 yarn
|
|
- Rust 1.70+ (用于 Tauri)
|
|
|
|
### Linux
|
|
```bash
|
|
sudo apt-get update
|
|
sudo apt-get install -y \
|
|
libgtk-3-dev \
|
|
libwebkit2gtk-4.0-dev \
|
|
libappindicator3-dev \
|
|
librsvg2-dev \
|
|
patchelf
|
|
```
|
|
|
|
### macOS
|
|
- Xcode 命令行工具
|
|
- macOS 10.13+
|
|
|
|
### Windows
|
|
- Microsoft C++ Build Tools
|
|
- WebView2 Runtime (通常已预装)
|
|
|
|
## 快速开始
|
|
|
|
### 1. 安装依赖
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
### 2. 构建应用
|
|
```bash
|
|
npm run build
|
|
npm run tauri:build
|
|
```
|
|
|
|
### 3. 开发模式
|
|
```bash
|
|
npm run tauri:dev
|
|
```
|
|
|
|
## 使用脚本
|
|
|
|
### 完整构建
|
|
```bash
|
|
./scripts/build.sh
|
|
```
|
|
|
|
### 开发构建
|
|
```bash
|
|
./scripts/dev.sh
|
|
```
|
|
|
|
### 仅打包前端
|
|
```bash
|
|
./scripts/package-frontend.sh
|
|
```
|
|
|
|
## 构建输出
|
|
|
|
构建完成后,打包文件位于:
|
|
- Linux: `src-tauri/target/release/bundle/`
|
|
- macOS: `src-tauri/target/release/bundle/dmg/`
|
|
- Windows: `src-tauri/target/release/bundle/nsis/`
|
|
|
|
### Linux 打包格式
|
|
- `.AppImage` - 通用 Linux 应用格式
|
|
- `.deb` - Debian/Ubuntu 包
|
|
- `.tar.gz` - 源代码压缩包
|
|
|
|
### macOS 打包格式
|
|
- `.dmg` - 磁盘映像
|
|
- `.app` - 应用程序包
|
|
|
|
### Windows 打包格式
|
|
- `.exe` - NSIS 安装程序
|
|
- `.msi` - MSI 安装程序
|
|
|
|
## CI/CD
|
|
|
|
项目使用 GitHub Actions 进行自动化构建:
|
|
|
|
- `.github/workflows/build.yml` - 发布构建
|
|
- `.github/workflows/test.yml` - 测试构建
|
|
|
|
触发构建:
|
|
```bash
|
|
git tag v0.1.0
|
|
git push origin v0.1.0
|
|
```
|
|
|
|
## 数字签名
|
|
|
|
### Windows
|
|
需要代码签名证书来避免 Windows SmartScreen 警告。
|
|
|
|
### macOS
|
|
需要 Apple Developer 账户来签名应用。
|
|
|
|
## 发布检查清单
|
|
|
|
- [ ] 更新版本号 (package.json, tauri.conf.json)
|
|
- [ ] 更新 CHANGELOG.md
|
|
- [ ] 创建 Git 标签
|
|
- [ ] 推送标签到远程仓库
|
|
- [ ] 等待 CI/CD 构建
|
|
- [ ] 下载并测试构建产物
|
|
- [ ] 创建 GitHub Release
|
|
- [ ] 上传构建产物到 Release
|
|
- [ ] 更新应用商店(如适用)
|
|
|
|
## 故障排除
|
|
|
|
### 构建失败
|
|
|
|
1. 清理缓存:
|
|
```bash
|
|
npm run clean
|
|
cargo clean
|
|
```
|
|
|
|
2. 重新安装依赖:
|
|
```bash
|
|
rm -rf node_modules
|
|
npm install
|
|
```
|
|
|
|
3. 检查 Rust 版本:
|
|
```bash
|
|
rustc --version
|
|
```
|
|
|
|
### Linux 依赖问题
|
|
|
|
如果遇到 GTK 或 WebKit 相关错误,请确保安装了所有依赖:
|
|
|
|
```bash
|
|
sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev
|
|
```
|
|
|
|
### 图标未显示
|
|
|
|
确保图标文件位于 `src-tauri/icons/` 目录:
|
|
- 32x32.png
|
|
- 128x128.png
|
|
- 128x128@2x.png
|
|
- icon.icns (macOS)
|
|
- icon.ico (Windows)
|
|
|
|
## 许可证
|
|
|
|
MIT License - 详见 LICENSE 文件
|