Golang Go语言中同目录下调用函数代码能跑,但是 vscode 报错,求解。

发布于 1周前 作者 phonegap100 来自 Go语言

同目录下 main.go func.go 两个文件

main 函数中调用了 func.go 中 a()函数,用 go run *.go 代码能正常运行,但是 vscode 里把 a()标红说 undefined 。显然语法没问题,是不是 vscode 设置的问题?求解


Golang Go语言中同目录下调用函数代码能跑,但是 vscode 报错,求解。
7 回复

检查下 package

更多关于Golang Go语言中同目录下调用函数代码能跑,但是 vscode 报错,求解。的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


你需要一个 go.mod 文件才能启用 IDE 的多文件项目相关功能,跑一下 go mod init 吧

go mod init 和 go mod tidy 都执行过。

是不是有多个 go.mod

找出问题所在了,func.go 里有两行约束语句,当成注释了没在意。
golang<br><br>//go:build ignore <br>//+build ignore<br><br>

删了就好了。

在Golang(Go语言)中,如果在同目录下调用函数时代码能够正常运行,但Visual Studio Code(VSCode)报错,这通常可能是由于以下几个原因导致的:

  1. GOPATH和Module问题

    • 确保你的项目是使用Go Modules(即go.mod文件)管理的,或者是正确设置在GOPATH内。
    • 如果使用Go Modules,检查go.mod文件是否正确初始化,并且所有依赖都已正确列出。
  2. VSCode配置

    • 确保VSCode安装了官方的Go扩展(由Google提供)。
    • 检查VSCode中的Go工具链是否配置正确,包括gopls(Go语言服务器协议)是否正常运行。
    • 尝试重启VSCode或者重新加载工作区。
  3. 编译和链接问题

    • 使用VSCode的终端或者外部终端运行go buildgo run命令,看是否能成功编译和运行。
    • 检查是否有未保存的更改或者文件路径问题导致VSCode无法正确解析。
  4. 错误和警告的区别

    • VSCode有时会显示一些不影响编译运行的警告信息,确认报错是编译错误还是仅仅是警告。
  5. 清理缓存

    • 尝试删除VSCode的缓存和Go扩展的缓存,然后重新加载项目。

如果以上步骤仍未解决问题,建议查看VSCode的输出或调试控制台,找到具体的错误信息,并根据错误信息进一步排查。

回到顶部