yyz notes yyz notes
首页
  • RBAC权限设计
  • 架构图标设计
  • 账号体系
  • python基础
  • python高级
  • python模块
  • python设计模式
  • python数据结构与算法
  • django
  • django-DRF
  • flask
  • 直接设计开源pip包
  • 直接设计开源项目
  • python示例题/脚本
  • python面试题
  • golang基础
  • golang高级
  • golang常用组件
  • gin框架
  • es6
  • javascript
  • react
  • vue
  • TypeScript
  • mysql
  • redis
  • minio
  • elasticsearch
  • mongodb
  • 消息队列
  • 自动化测试
  • 操作系统

    • linux
    • windows
  • nginx
  • docker
  • k8s
  • git
  • ldap
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

益章

可乐鸡翅
首页
  • RBAC权限设计
  • 架构图标设计
  • 账号体系
  • python基础
  • python高级
  • python模块
  • python设计模式
  • python数据结构与算法
  • django
  • django-DRF
  • flask
  • 直接设计开源pip包
  • 直接设计开源项目
  • python示例题/脚本
  • python面试题
  • golang基础
  • golang高级
  • golang常用组件
  • gin框架
  • es6
  • javascript
  • react
  • vue
  • TypeScript
  • mysql
  • redis
  • minio
  • elasticsearch
  • mongodb
  • 消息队列
  • 自动化测试
  • 操作系统

    • linux
    • windows
  • nginx
  • docker
  • k8s
  • git
  • ldap
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • golang基础

    • 初识golang

      • 简介
      • 环境搭建
      • 开发工具介绍
      • Go语言工程结构详述
      • Go语言程序的编译和运行
      • 语法注意事项
      • 注释
      • 代码风格
      • 使用Goland创建并运行项目
      • GoLand进行Debug
    • golang基础语法

    • golang流程控制

    • golang函数

    • golang内置函数

    • golang包

    • golang错误异常处理

    • golang面向对象(结构体)

    • golang文件处理

    • golang并发编程简介

    • golang并发编程-协程

    • golang网络编程

    • 反射 reflect

  • golang高级

  • 常用组件

  • gin

  • golang
  • golang基础
  • 初识golang
YiZhang-You
2023-05-20

GoLand进行Debug

如何通过GoLand进行Debug_goland调试模式_西瓜味儿的小志的博客-CSDN博客 (opens new window)

如何通过GoLand调试go程序?

可以分两种情况: 第一种是普通不需要传参数的程序的调试 第二种是需要传一些参数才能运行的程序的调试

1、不需要传参数的程序如何Debug

先随便写一个简单的程序如下:

func main() { a := 1 b := 2 val := a + b fmt.Println(val) } 1 2 3 4 5 6 假设我们现在要调试这个程序,如何搞呢?首先先打个断点

然后点击一下绿色箭头会出现下面这样

接着点击那个绿色小虫子就可以开启debug模式了,启动之后如下图,此时我们就可以在调试窗口看到各个变量的值了。

插播一条重要信息

debug模式启动后,上面图片里各种图标都代表什么功能?

从上到下依次代表: 1、重启debug 2、设置运行配置 3、跳到下一个断点处 4、暂停 5、结束debug 6、查看本项目所有断点位置 7、在有断点的地方跳过断点

从左到右依次代表: 1、调试代码的窗口 2、点击这个会直接光标会直接停到你打断点的那行代码上 3、下一步,如果是方法它不会跳进去,只是一行一行往下走 4、跳转到详情,比如这行代码调用了一个方法,它就可以追到方法里去,看这个方法具体的执行情况 5、从详情跳出去,与 4 相反 6、跳转到下一个断点,比如现在有两个断点,目前程序停在了断点1处,那么点击这个就会直接跳转到断点2

好了,至此,简单的调试方法你已经掌握了,那么接下来看点高级的玩法

2、需要传参数才能运行的程序如何Debug

比如我现在要调试 fis-capacity 这个服务中的某个接口,这个接口需要传一些参数,此时又该怎么玩呢?

首先,打开你的项目,单击右上角这里 Add Configuration 添加配置

然后,点击弹出界面的加号

接着点击 Go Build

之后会看到下面这个界面,主要会用到下面这几个红框圈里的选项,从上到下简单介绍下它们都代表什么含义

Run Kind:一般设置为File Files:main文件的主入口 Output directory:设置编译后生成的可执行文件的存放目录,为空时默认不生成可执行文件 Run after build:先build生成二进制文件,再执行 Working directory:表示工作文件夹 Environment:环境变量,点开之可以添加运行要调试的这个程序所需的环境变量 其他的选项默认即可,具体作用自行研究下吧。

配置完以后就可以进行调试了,假设我们需要调试fis-capacity 服务中的api/cap/v2/capacity/get接口,先在该接口的controller层的方法打一个断点

然后点击右上角的绿色小虫子按钮启动调试模式

出现类似下面的页面就说明启动成功啦

那此时如何向这个接口传入要测试的参数呢?此时需要借助postman工具,请求地址大家根据自己测试的服务端口号自行更改

然后单击send发送请求,此时我们在回到GoLand,可以看到程序已经停在了刚才打断点的地方

看,在这里接收到了从 postman 传过来的参数,说明调试这个接口成功了,至此,大功告成。

编辑 (opens new window)
使用Goland创建并运行项目
变量

← 使用Goland创建并运行项目 变量→

最近更新
01
配置yun源
05-24
02
linux-配置python虚拟环境
05-24
03
linux文件目录管理
05-24
更多文章>
Theme by Vdoing | Copyright © 2023-2023 yizhang | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式