Golang Go语言中同目录下调用函数代码能跑,但是 vscode 报错,求解。
同目录下 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 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)报错,这通常可能是由于以下几个原因导致的:
-
GOPATH和Module问题:
- 确保你的项目是使用Go Modules(即
go.mod
文件)管理的,或者是正确设置在GOPATH内。 - 如果使用Go Modules,检查
go.mod
文件是否正确初始化,并且所有依赖都已正确列出。
- 确保你的项目是使用Go Modules(即
-
VSCode配置:
- 确保VSCode安装了官方的Go扩展(由Google提供)。
- 检查VSCode中的Go工具链是否配置正确,包括
gopls
(Go语言服务器协议)是否正常运行。 - 尝试重启VSCode或者重新加载工作区。
-
编译和链接问题:
- 使用VSCode的终端或者外部终端运行
go build
和go run
命令,看是否能成功编译和运行。 - 检查是否有未保存的更改或者文件路径问题导致VSCode无法正确解析。
- 使用VSCode的终端或者外部终端运行
-
错误和警告的区别:
- VSCode有时会显示一些不影响编译运行的警告信息,确认报错是编译错误还是仅仅是警告。
-
清理缓存:
- 尝试删除VSCode的缓存和Go扩展的缓存,然后重新加载项目。
如果以上步骤仍未解决问题,建议查看VSCode的输出或调试控制台,找到具体的错误信息,并根据错误信息进一步排查。