Go中同一个包中的函数无法调用问题解决

时间:2025-03-02 13:20:44

今天在写代码过程中发现在同一个包内,中无法调用同一个包中的函数时,显示报错

client\:45:10: undefined: login

说我的函数没有定义,我已经用go mod init初始化了项目,为什么还是不行?

文件结构:

├── 
└── 

上网查阅后发现,原因是Go 中 main 包默认不会加载其他文件, 而其他包都是默认加载的。如果 main 包有多个文件,则在执行的时候需要将其它文件都带上,即执行 go run .

在VSCODE中配置

在 VSCode 的 .vscode 目录下创建  文件, 并添加如下内容:

{
    "": {
        "go": "cd $dir && go run .",
    },
    "": {
        "$dir\\*.go": "go"
    }
}