vscode调试go程序报错“Unable to process `evaluate`: debuggee is running“

  • Post author:
  • Post category:其他




问题描述

	在调试go程序时,报如下错误:"Unable to process `evaluate`: debuggee is running".
	程序内容,是想接收用户输入多个数字,并在屏幕上输出。使用的编辑器是:vscode,当在进行断电调试时,报错。



程序代码

func main() {
	reader := bufio.NewReader(os.Stdin)
	fmt.Println("请输入多个整数,使用空格分割:")

	input, _ := reader.ReadString('\n')
	input = strings.Trim(input, "\r\n")
	inputs := strings.Split(input, " ")
	for _, num := range inputs {
		n, _ := strconv.Atoi(num)
		fmt.Printf("%d ", n)
	}
}



调试错误信息如图

在这里插入图片描述



lunch.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 Package",
            "type": "go",
            "request": "launch",
            "mode": "auto",
            "program": "${fileDirname}",
        }
    ]
}



解决办法

出现该问题后,自行在网上查找解决办法,解决方案如下,需要在lunch.json中添加一行配置:"console": "integratedTerminal",设置调试时通过terminal启动,不通过console启动
{
    // 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 Package",
            "type": "go",
            "request": "launch",
            "mode": "auto",
            "program": "${fileDirname}",
            "console": "integratedTerminal"
        }
    ]
}

修改后调试如下:

在这里插入图片描述



版权声明:本文为chen501986411原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。