跳到正文
灵动桌面框架
Esc
本栏目菜单

快速开始

从零开始搭建一个灵动桌面应用,只需三步。

第一步:获取项目

联系管理员(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 --noEmitTypeScript 类型检查
cargo clippy --manifest-path src-tauri/Cargo.tomlRust 代码检查
cargo test --manifest-path src-tauri/Cargo.toml运行 Rust 测试

常见启动问题

现象原因与处理
Port 1420 is already in usevite.config.ts 设了 strictPort: true,端口被占用时直接报错而不是换端口。pnpm tauri dev 会先执行 kill-port 1420;单独跑 pnpm dev 时可改用 pnpm dev:clean
执行 pnpm tauri dev 后没有新窗口,原有窗口被唤到前台已经有一个相同 identifier 的实例在运行(可能藏在托盘里),被禁止多开拦下。先从托盘退出,或改用 pnpm tauri:dev
点关闭按钮后程序没有退出设计如此:关闭主窗口只是隐藏到系统托盘,从托盘菜单「退出」才会真正结束进程

下一步