golang吧 关注:6,425贴子:14,627
  • 5回复贴,共1

golang的程序go run .跑没问题 用vscode debug报错:

只看楼主收藏回复

我有两个文件 main.go room.go 都在同一级目录下,
room.go里有个变量
import ("container/list")
var MsgList = list.New()
在main.go的方法里调用到了MsgList变量
for {
if MsgList.Len() == 0 {
msg := fmt.Sprintf("%v", MsgList.Front().Value)
MsgList.Remove(MsgList.Front())
if err = c.WriteMessage(1, []byte(msg)); err != nil {
return
}break
}
}
用 go run . 跑没有问题 但是用vscode debug 报错
Build Error: go build -o /Users/dozenx/Documents/workspace-go/douyin-live-go/__debug_bin -gcflags all=-N -l ./main.go# command-line-arguments./main.go:33:8: undefined: MsgList
./main.go:34:31: undefined: MsgList
./main.go:35:6: undefined: MsgList (exit status 2)
为什么
lunch.json为
{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "Launch","type": "go","request": "launch","mode": "auto","program": "${workspaceRoot}/main.go","env": {},"args": [],}]}


IP属地:浙江1楼2024-01-25 20:02回复
    不到呢,go run能跑那基本没啥事,我都是用goland的,vscode就不清楚啥情况了,还有你这代码是不是有问题?当消息列表为零时,取头消息值发送?


    IP属地:广东来自Android客户端2楼2024-01-26 02:22
    回复
      2025-07-20 02:00:47
      广告
      那就是vscode的问题


      IP属地:陕西来自Android客户端3楼2024-01-30 21:25
      回复
        你只编译运行一个main.go,肯定不行,找不到room.go的变量,goland跑默认是执行包的main函数


        IP属地:广东4楼2024-02-12 19:49
        回复
          换goland试下


          IP属地:四川6楼2024-02-17 11:51
          回复
            所以你们都用idea ?


            IP属地:浙江7楼2024-02-28 17:16
            回复