我刚刚在一台新计算机上安装了Go和Visual代码。在访问现有项目时,会遇到导入问题,例如:
could not import golang.org/x/text/encoding/charmap (cannot find package \"golang.org/x/text/encoding/charmap\" in any of
C:\Program Files\Go\src\golang.org\x\text\encoding\charmap (from $GOROOT)
C:\Users\allan\go\src\golang.org\x\text\encoding\charmap (from $GOPATH))GOPATH=C:\Users\allan\go
OS version: Windows 10.0.19043 Build 19043
GO version: go1.17.1 windows/amd64
Visual Studio Code version: 1.60.2 (user setup)这个软件包实际上是用go get ..安装的。
它已安装在:
c:\Users\allan\go\pkg\mod\golang.org\x\text@v0.3.7\encoding\charmap\charmap.go我注意到两件事:
C:\Users\allan\go\src\golang.org\...而不是..\pkg\mod\golang.org\...text@v0.3.7,而不仅仅是text。
但是,go.sum文件包括: golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= 所以,我想编译器应该找出要使用的版本。
项目文件夹go.mod
module github.com/Orionsg/util
go 1.16
require golang.org/x/text v0.3.7和go.sum:
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=Visual代码或其他Go工具是否与Go安装不同步?
我能做些什么让Go编译器使用包的正确目录位置吗?
还有其他建议吗?
发布于 2021-10-03 08:52:35
我终于发现了出了什么问题。这是一个VSCode问题:
在VSCode中打开文件夹时,它不再支持打开顶部文件夹,其下面是项目文件夹,您可以在访问不同的项目时展开和关闭该文件夹。这件事之前很好。
现在,必须将每个项目单独作为顶级文件夹打开,否则对导入的检查将无法正常工作。
发布于 2022-09-18 09:23:45
如果Go项目位于主项目的子文件夹中,则将Go项目文件夹添加到工作区(Files-> add文件夹到工作区)以修复此问题。更多信息,这里。
https://stackoverflow.com/questions/69406376
复制相似问题