# 编译当前平台(macOS Apple Silicon)
./build-release.sh
# 编译所有平台
./build-release.sh all发版文件会自动生成到:build/releases/
| 平台 | 命令 | 输出文件 |
|---|---|---|
| macOS Apple Silicon (M1/M2/M3) | ./build-release.sh darwin-arm64 |
xterm-file-manager-v{版本}-darwin-arm64.zip |
| macOS Intel | ./build-release.sh darwin-amd64 |
xterm-file-manager-v{版本}-darwin-amd64.zip |
| Windows 64位 | ./build-release.sh windows |
xterm-file-manager-v{版本}-windows-amd64.exe |
| Linux 64位 | ./build-release.sh linux |
xterm-file-manager-v{版本}-linux-amd64.tar.gz |
| 所有平台 | ./build-release.sh all |
以上所有文件 |
脚本会自动完成以下步骤:
-
✅ 清理缓存
- 清理
build/bin/*(旧的编译产物) - 清理
frontend/dist/assets(旧的前端打包文件) - 清理 Vite 缓存(
.vite和node_modules/.vite)
- 清理
-
✅ 安装依赖
- 如果
node_modules不存在,自动运行npm install
- 如果
-
✅ 编译应用
- 使用
wails build -platform {平台} -clean编译 - 自动处理 Go 和前端代码
- 使用
-
✅ 打包发版
- macOS: 打包成
.zip(包含.app) - Windows: 复制
.exe文件 - Linux: 打包成
.tar.gz
- macOS: 打包成
-
✅ 显示结果
- 显示生成的文件路径
- 显示文件大小
- 提供快速测试命令
./build-release.sh darwin-arm64输出:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
XTerm File Manager - Release Build
Version: 2.32
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[1/5] 🧹 清理缓存和旧文件...
✓ 缓存清理完成
[2/5] ✓ 前端依赖已存在,跳过安装
[3/5] 🔨 编译 macOS (Apple Silicon)...
✓ macOS (Apple Silicon) 编译成功
[4/5] 📦 打包到 releases...
✓ 已打包: xterm-file-manager-v2.32-darwin-arm64.zip
大小: 45M
[5/5] ✅ 完成!
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
发版文件已生成到:
/Users/xd/Documents/xiedong_dev/mac_code/xterm-file-manager/build/releases
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
./build-release.sh all将会依次编译:
- macOS Apple Silicon
- macOS Intel
- Windows
- Linux
所有文件都在 build/releases/ 目录中。
# 进入发版目录
cd build/releases
# 解压
unzip xterm-file-manager-v2.32-darwin-arm64.zip
# 移除 macOS 隔离属性(首次需要)
xattr -cr xterm-file-manager.app
# 运行
open xterm-file-manager.app# 直接运行
build/releases/xterm-file-manager-v2.32-windows-amd64.exe# 解压
cd build/releases
tar -xzf xterm-file-manager-v2.32-linux-amd64.tar.gz
# 运行
./xterm-file-managerA: 先完全清理缓存再试:
# 清理所有缓存
rm -rf build/bin/*
rm -rf frontend/dist/assets
cd frontend
rm -rf node_modules/.vite .vite node_modules
npm install
cd ..
# 重新编译
./build-release.shA: 运行以下命令移除隔离属性(一次性操作):
xattr -cr xterm-file-manager.appA: 所有发版文件都在 build/releases/ 目录:
ls -lh build/releases/A: 编辑 wails.json 文件中的 version 字段:
{
"version": "2.33",
...
}脚本会自动读取版本号并应用到文件名。
A: 使用开发模式:
# 开发模式(支持热重载)
wails dev或者手动编译(不打包):
rm -rf build/bin/* frontend/dist/assets
cd frontend && rm -rf .vite node_modules/.vite && cd ..
wails build -platform darwin/arm64 -clean
open build/bin/xterm-file-manager.app发布新版本前的检查清单:
- 更新版本号(
wails.json中的version) - 更新
README.md的 Changelog - 运行
./build-release.sh all编译所有平台 - 测试每个平台的可执行文件
- 上传到 GitHub Releases
- 更新 Release Notes