Go1.17.3拉取Google API依赖时报找不到gensupport包如何解决
问题根因
- 当前拉取的
google.golang.org/api/option为最新版本,该版本调整了内部依赖gensupport的包结构。由于你未启用Go mod,依赖版本没有被锁定,而今年7月操作时对应的依赖版本还未发生结构调整,因此当时可以正常运行。 gensupport是option包的间接依赖,不需要你在代码中直接引用也会被依赖检索。
解决方法
方法一:启用Go mod(推荐)
Go 1.17版本已原生支持Go mod,启用后可自动处理间接依赖和版本锁定,适配最新依赖关系:
- 进入项目根目录执行初始化命令:
go mod init <你的项目名称> - 重新拉取目标依赖:
go get google.golang.org/api/option - 直接运行代码即可自动补全所有缺失的间接依赖。
方法二:拉取兼容旧版本依赖
如果你需要继续使用GOPATH模式,可以手动指定拉取7月对应的稳定版本:go get google.golang.org/api@v0.89.0
该版本为2022年7月前后发布的版本,依赖结构与你之前使用的结构一致,包含所需的gensupport包。
方法三:单独拉取缺失依赖
也可以直接手动拉取缺失的间接依赖包:go get google.golang.org/api/gensupport
内容的提问来源于stack exchange,提问作者Amandeep kaur
相关产品推荐
相关产品推荐

