当前位置: 首页 > article >正文

使用vscode调试wails项目(golang桌面GUI)

文章目录

  • 安装 Golang 环境
  • 安装 NPM
  • 安装 VSCode
  • 安装 Go 插件
  • 安装 Go 插件依赖工具
  • 安装 Wails
    • 系统检查
  • 准备项目
  • Visual Studio Code 配置安装和构建步骤
  • 参考资料

安装 Golang 环境

访问 golang 官网下载环境安装包:https://go.dev/dl/

安装 NPM

从 Node 下载页面 下载 NPM。 最好使用最新版本,因为这是我们通常会测试的版本。

运行 npm --version 进行验证。

安装 VSCode

VsCode 的安装就更加容易,直接在官网下载软件包按照指引安装即可。

https://code.visualstudio.com/

安装 Go 插件

VSCode 的插件功能中输入 go 关键字,然后找到下图中的插件,并安装。
在这里插入图片描述

安装 Go 插件依赖工具

快捷键 Ctrl + Shift + p 打开命令面板,输入go install tools,选择第一项 Go: install/Update Tools
在这里插入图片描述

在这里插入图片描述

安装 Wails

运行 go install github.com/wailsapp/wails/v2/cmd/wails@latest 安装 Wails CLI。

系统检查

运行 wails doctor 将检查您是否安装了正确的依赖项。 如果没有,它会就缺少的内容提供建议以帮助纠正问题。

准备项目

# 下载项目
git clone https://github.com/obity/hiposter.git
# 进入项目目录
cd hiposter
# 进入项目前端目录
cd frontend
# 安装nodejs依赖
npm install
npm run dev
cd ..
go build -tags dev -gcflags "all=-N -l"
wails dev

在这里插入图片描述

Visual Studio Code 配置安装和构建步骤

mkdir .vscode && touch .vscode/launch.json && touch .vscode/tasks.json

lanuch.json

{
    // 使用 IntellliSense 来了解可能的属性。
    // 悬停以查看现有属性的描述。
    // 更多详情访问:https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Wails: Debug myproject",
            "type": "go",
            "request": "launch",
            "mode": "exec",
            "program": "${workspaceFolder}/build/bin/myproject.exe",
            "preLaunchTask": "build",
            "cwd": "${workspaceFolder}",
            "env": {}
        }
    ]
}

文件tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "ui:install",
            "type": "shell",
            "options": {
                "cwd": "${workspaceFolder}/frontend"
            },
            "presentation": {
                "clear": true,
                "panel": "shared",
                "showReuseMessage": false
            },
            "isBackground": true,
            "command": "pnpm",
            "args": [
                "install"
            ]
        },
        {
            "label": "ui:build",
            "type": "shell",
            "options": {
                "cwd": "${workspaceFolder}/frontend"
            },
            "presentation": {
                "clear": true,
                "panel": "shared",
                "showReuseMessage": false
            },
            "isBackground": true,
            "command": "pnpm",
            "args": [
                "build"
            ]
        },
        {
            "label": "build",
            "type": "shell",
            "options": {
                "cwd": "${workspaceFolder}"
            },
            "command": "go",
            "args": [
                "build",
                "-tags",
                "dev",
                "-gcflags",
                "all=-N -l",
                "-o",
                "build/bin/myproject.exe"
            ],
            "dependsOn": [
                "ui:install",
                "ui:build"
            ]
        }
    ]
}

vscode调试图片如下
在这里插入图片描述

在这里插入图片描述

参考资料

在 VS Code 中调试
vscode launchjson-attributes
使用 VSCode 开发 Golang 代码,并支持 debug断点调试
wails-v2-examples
wails 手动构建
vscode-go/wiki/debugging
集成开发环境


http://www.kler.cn/news/342121.html

相关文章:

  • Python+PyCharm安装和配置(详细步骤)
  • 【C++】map详解(键值对的概念,与multimap的不同)
  • awk脚本和python脚本版本
  • 打破常规,BD仓储物流的效能提升!
  • python xml的读取和写入
  • 【C++网络编程】(一)Linux平台下TCP客户/服务端程序
  • 学习小课堂
  • ssm基于Javaee的影视创作论坛的设计与实现
  • SpringBoot高级并发实践:自定义线程池与@Async异步调用深度解析
  • 网络风暴产生原因、危害、预防和解决方法
  • 【书生浦语实战】茴香豆企业级知识库问答工具-搭建Dify问答助手
  • k8s 1.28.2 集群部署 MinIO 分布式存储
  • 路径跟踪之导航向量场——二维导航向量场
  • 实景三维赋能地下管线综合智管应用
  • 构建宠物咖啡馆:SpringBoot框架的实现策略
  • 导师面试题库
  • 使用纯CSS和JavaScript来实现一个转盘抽奖效果(设置机率)
  • 基于SpringBoot“花开富贵”花园管理系统【附源码】
  • 深入理解Transformer的笔记记录(精简版本)---- Transformer
  • Vuex 使用实例