Golang语言学习第2天_GoLand Debug

本文介绍了使用Golang进行本地调试的方法,包括通过GoLand配置、命令行参数传递和附加到进程调试。过程中提到了gops插件的使用以及注意事项,如避免使用`gorun`或带有`-s-w`标志的编译选项以保持调试信息。
摘要由CSDN通过智能技术生成

前情回顾:

Golang语言学习第1天_安装环境配置以及开发工具

一、本地调试

1、Go Demo

package main

import (
    "flag"
    "fmt"
)

// 声明输入参数hxpInputParam 默认值为0 用途描述
var hxpInputParam = flag.Int("hxpInputParam", 0, "Input parameter for 珩小派")

func main() {
    fmt.Println("珩小派-本地调试,配置演示开始")
    //解析命令行参数并设置相应的标志变量
    flag.Parse()
    var x = 5
    fmt.Println("The value of x is:", x)
    // 两数相加
    sum := *hxpInputParam + x
    fmt.Println("The sum of add x and hxpInputParam is:", sum)
    fmt.Println("珩小派-本地调试  End!")
}

2、GoLand Run/Debug Configurations

config-step1 config-step2 config-step3 config-step4 最终输出结果

珩小派-本地调试,配置演示开始
The value of x is: 5
The sum of add x and hxpInputParam is: 55
珩小派-本地调试  End!      

二、附加到进程

1、Go Demo

package main

import (
    "flag"
    "fmt"
    "time"
)

var hxpInputParam1 = flag.Int("hxpInputParam1", 0, "Input parameter for 珩小派")

func main() {
    flag.Parse()
    var i = 0
    for {
        fmt.Println("print", i, *hxpInputParam1)
        i++
        time.Sleep(time.Second)
    }
}

2、安装gops 插件

执行以下命令

go install github.com/google/gops@latest 安装插件成功

gops-plugin GoLand-Run-Attach to Process

GoLand-Run-Attach to Process 找到进程

Attach to Process 附件到进程 ERROR

虽然已经运行Debug 但是无法获取Debug信息

could not attach to pid 2684: decoding dwarf section info at offset 0x0: too sho
rt - debuggee must not be built with 'go run' or -ldflags='-s -w', which strip d
ebug info

ERROR

3、编译并运行可执行文件

编译生成可执行文件

go build -gcflags="all=-N -l" -o StudyDebugProcess.exe 编译

运行可执行文件

step1 step2

本文是转载文章 珩小派,版权归原作者所有。建议访问原文,转载本文请联系原作者。

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值