VSCode golang与fmt.Scanln调试问题

问题描述 投票:0回答:1

我想调试一个非常简单的go程序(只是为了看看是否/如何使用VSCode)

到目前为止这是我的src:

package main

import (
    "fmt"
)

func main() {
    fmt.Printf("Please enter your name\n>>")
    name := "" //«breakpoint on this line»
    fmt.Scanln(&name)
    fmt.Println("Welcome to my awesome program, " + name + "!")
}

当我开始调试时,一切都很顺利,直到我点击下一行(fmt.Scanln(&name))上的“跳过”按钮。

我的局部变量从列表中消失,我再也无法点击“Step”按钮(只有暂停,什么都不做,重启和停止),如果我尝试在调试控制台中输入内容,则没有任何反应。然后,当我停止调试时,它会告诉我

«whatever I entered»
*not available*

你知道我的错误是什么吗?任何帮助将不胜感激。

提前致谢;阮经天

debugging go visual-studio-code
1个回答
0
投票

看起来这是使用delve调试器对VSCode实现的限制。也许很快就允许,如果你在外面钻研,它现在可以工作。请参见此处的讨论:https://github.com/Microsoft/vscode-go/issues/219

© www.soinside.com 2019 - 2024. All rights reserved.