(4) Tauri调试

创建项目

我使用的下面的配置

项目编译

安装依赖

进入根路径下执行 npm install,虽然使用了yarn管理工具,但是yarn安装依赖会失败。

编译前端

npm run build

运行项目包含了rust编译

npm run tauri dev

调试

必备插件

在 VS Code 中打开扩展商店(快捷键 Ctrl+Shift+X),搜索并安装,前三个是必选项:

  • CodeLLDB

  • C/C++

  • Rust Analyzer

  • CrabNebula DevTools(如果你启用了 CrabNebula 插件)

配置调试文件

launch.json文件

复制代码
{
  // Use IntelliSense to learn about possible attributes.
  // Hover to view descriptions of existing attributes.
  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Launch App Debug",
      "type": "cppvsdbg",
      "request": "launch",
      // change the exe name to your actual exe name
      // (to debug release builds, change `target/debug` to `release/debug`)
      "program": "${workspaceRoot}/src-tauri/target/debug/your-app-name-here.exe",
      "cwd": "${workspaceRoot}",
      "preLaunchTask": "ui:dev"
    }
  ]
}

tasks.json文件

复制代码
{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "label": "build:debug",
      "type": "cargo",
      "command": "build",
      "options": {
        "cwd": "${workspaceRoot}/src-tauri"
      }
    },
    {
      "label": "ui:dev",
      "type": "shell",
      // `dev` keeps running in the background
      // ideally you should also configure a `problemMatcher`
      // see https://code.visualstudio.com/docs/editor/tasks#_can-a-background-task-be-used-as-a-prelaunchtask-in-launchjson
      "isBackground": true,
      // change this to your `beforeDevCommand`:
      "command": "yarn",
      "args": ["dev"]
    },
    {
      "label": "dev",
      "dependsOn": ["build:debug", "ui:dev"],
      "group": {
        "kind": "build"
      }
    }
  ]
}

全部配置完后 按F5调试项目。

调试前端代码

右键webview页面选择检查即可调出开发者web页面,在源代码窗口即可调试前端代码。

添加日志

前端日志

使用webview的api即可

console.log("普通日志");

console.warn("警告日志");

console.error("错误日志");

rust日志

println!("日志消息");

相关推荐
蚂蚁背大象13 小时前
Rust 所有权系统是为了解决什么问题
后端·rust
布列瑟农的星空14 小时前
前端都能看懂的rust入门教程(五)—— 所有权
rust
Java水解1 天前
Rust嵌入式开发实战——从ARM裸机编程到RTOS应用
后端·rust
Pomelo_刘金1 天前
Rust:所有权系统
rust
Ranger09292 天前
鸿蒙开发新范式:Gpui
rust·harmonyos
DongLi015 天前
rustlings 学习笔记 -- exercises/05_vecs
rust
番茄灭世神5 天前
Rust学习笔记第2篇
rust·编程语言
shimly1234566 天前
(done) 速通 rustlings(20) 错误处理1 --- 不涉及Traits
rust
shimly1234566 天前
(done) 速通 rustlings(19) Option
rust
@atweiwei6 天前
rust所有权机制详解
开发语言·数据结构·后端·rust·内存·所有权