快速开始
从零开始搭建一个灵动桌面应用,只需三步。
第一步:获取项目
联系管理员(QQ 770492966)获取框架源码,解压后进入项目目录:
cd my-app
第二步:安装依赖
# 安装前端依赖
pnpm install
Rust 依赖会在首次运行时自动编译。
第三步:启动开发
pnpm tauri dev
启动后会同时运行:
- Vite 开发服务器 —
http://localhost:1420(前端 HMR 热更新;由beforeDevCommand: "pnpm dev:clean"自动拉起,启动前先释放 1420 端口) - Rust 后端编译 — 自动编译并启动 Tauri 窗口(开发构建的窗口标题带
[DEV]后缀)
首次编译 Rust 可能需要几分钟,后续增量编译非常快。
想和已安装的正式版同时运行?
用 pnpm tauri:dev 代替 pnpm tauri dev。它额外合并 src-tauri/tauri.conf.dev.json,把 identifier 换成 com.agilefr.tauri.dev、产品名换成 Agile Tauri (Dev)。框架内置禁止多开(single-instance 插件按 identifier 加锁),identifier 相同时开发版会被已运行的正式版拦下。
项目初始配置
窗口配置
编辑 src-tauri/tauri.conf.json(以下为模板默认值):
{
"app": {
"windows": [
{
"title": "Agile Tauri",
"width": 1330,
"height": 830,
"minWidth": 900,
"minHeight": 600,
"center": true,
"decorations": false,
"visible": false,
"dragDropEnabled": false
}
]
}
}
decorations: false— 不使用系统标题栏,由前端WindowControls组件绘制窗口按钮visible: false— 窗口先隐藏,Rust 端在setup里把窗口摆回上次所在的显示器后再显示,避免启动时窗口跳动
应用标识
{
"productName": "Agile Tauri",
"identifier": "com.agilefr.tauri"
}
衍生项目请把 identifier 改成自己的反向域名(如 com.yourcompany.myapp),并同步修改 src-tauri/tauri.conf.dev.json 里的开发版 identifier(保持「主 identifier + .dev」)。
常用命令
| 命令 | 用途 |
|---|---|
pnpm tauri dev | 启动开发环境 |
pnpm tauri:dev | 启动开发环境(独立 dev identifier,可与正式版共存) |
pnpm tauri build | 构建生产版本 |
pnpm dev | 仅启动前端开发服务器 |
pnpm build | 仅构建前端(tsc && vite build) |
npx tsc --noEmit | TypeScript 类型检查 |
cargo clippy --manifest-path src-tauri/Cargo.toml | Rust 代码检查 |
cargo test --manifest-path src-tauri/Cargo.toml | 运行 Rust 测试 |
常见启动问题
| 现象 | 原因与处理 |
|---|---|
Port 1420 is already in use | vite.config.ts 设了 strictPort: true,端口被占用时直接报错而不是换端口。pnpm tauri dev 会先执行 kill-port 1420;单独跑 pnpm dev 时可改用 pnpm dev:clean |
执行 pnpm tauri dev 后没有新窗口,原有窗口被唤到前台 | 已经有一个相同 identifier 的实例在运行(可能藏在托盘里),被禁止多开拦下。先从托盘退出,或改用 pnpm tauri:dev |
| 点关闭按钮后程序没有退出 | 设计如此:关闭主窗口只是隐藏到系统托盘,从托盘菜单「退出」才会真正结束进程 |