基于 React、Vite 和 Tauri 2 构建的桌面端部署工具,用于管理 PXGL 资源部署配置,并支持手动部署、自动监听部署和 Git 信息展示。
- 多部署配置管理:新增、编辑、复制、删除和拖拽排序配置。
- 两种部署模式:
- 资源直放:将源目录中的指定资源目录复制到目标目录。
- JAR 替换:将资源写入目标 JAR 包内的静态资源路径。
- 自动部署:监听源目录变化后触发部署。
- Git 信息展示:读取源目录当前分支、最近提交和提交时间。
- 部署进度与日志:展示当前阶段、进度百分比和执行日志。
- 前端:React 18、TypeScript、Vite
- 桌面端:Tauri 2
- 后端:Rust
- 关键 Rust 依赖:
tauri、tokio、zip、git2、notify、serde
- Node.js 18+
- npm
- Rust stable
- Tauri 2 所需系统依赖
Windows 环境下通常还需要安装 Microsoft C++ Build Tools 和 WebView2 Runtime。
npm install启动 Tauri 开发模式:
npm run tauri dev仅启动前端开发服务:
npm run dev前端开发服务默认端口为 1420。
构建前端产物:
npm run build构建桌面安装包:
npm run tauri build构建产物位于 src-tauri/target/ 目录下。
应用配置会保存到系统配置目录下的 pxgl-deploy/config.json。
单个部署配置包含以下关键字段:
name:配置名称。sourceDir:源项目目录。targetDir:目标部署目录。sourceResourceDir:源目录下需要部署的资源目录,默认PXGL。mode:部署模式,支持directCopy和jarStaticReplace。jarFileName:JAR 替换模式下的目标 JAR 文件名,默认ydcloud-Web-1.1.0.jar。jarStaticPath:JAR 内静态资源路径,默认BOOT-INF/classes/static。autoDeploy:是否启用目录监听自动部署。
.
├── src/ # React 前端源码
│ ├── components/ # UI 组件
│ ├── hooks/ # 前端状态和业务 Hook
│ ├── types/ # TypeScript 类型定义
│ └── utils/ # Tauri 调用封装
├── src-tauri/ # Tauri/Rust 后端源码
│ ├── src/commands/ # Tauri 命令
│ ├── src/config.rs # 配置读写和数据结构
│ ├── src/deploy.rs # 部署核心逻辑
│ ├── src/git.rs # Git 信息读取
│ ├── src/watcher.rs # 自动部署监听
│ └── tauri.conf.json # Tauri 配置
├── package.json # 前端依赖和脚本
└── vite.config.ts # Vite 配置
| 命令 | 说明 |
|---|---|
npm run dev |
启动 Vite 开发服务 |
npm run build |
TypeScript 检查并构建前端 |
npm run preview |
预览前端构建产物 |
npm run tauri dev |
启动 Tauri 开发模式 |
npm run tauri build |
构建桌面应用 |
- 部署前请确认源目录和目标目录路径正确。
- JAR 替换模式会修改目标 JAR 内容,建议在正式使用前保留备份。
- 自动部署依赖文件系统监听,频繁生成临时文件的目录可能触发多次部署。