【golang】goland使用多版本go sdk的方法

背景

由于最近手动清理了macos的缓存,包括go缓存,导致"项目X"中go1.24 sdk 环境没有了。我本地全局环境是go1.20.14。"项目X"使用的是go1.24环境。

解决方法

https://golang.google.cn/dl/

手动下载go1.25.5压缩包, goland 偏好设置 goroot 指向这个压缩包解压缩的位置,结果报错。

复制代码
dyld: Symbol not found: _SecTrustCopyCertificateChain
  Referenced from: /Users/Documents/gopath/go1.25.5/bin/go (which was built for Mac OS X 12.0)
  Expected in: /System/Library/Frameworks/Security.framework/Versions/A/Security
 in /Users/Documents/gopath/go1.25.5/bin/go

原因是:

Go 1.25.5 作为 Go 1.25 系列的更新版本,其最低 macOS 系统支持与 Go 1.25 主版本一致。Go 1.25 系列要求macOS 12 Monterey 或更高版本,并已停止对更早版本的支持;因此,Go 1.25.5 也需满足此最低系统要求。

下载go1.24.11,完美解决。

结束语

疑问:此处有疑问的地方是,我当初go mod init 项目X的时候,并未主动下载go.1.24的包,也未设置goroot。

它是自动下载的go 1.24,然后goland自动设置的goroot go1.24,因为我当时跟本不知道go1.24装到哪里了。

这次是解压缩的go1.24是我自己指定的位置。

我在清理本机缓存的时候,确实删除过go1.24.zip,但我忘记是在哪个目录删的。

希望有知道原因的小伙伴给个留言。

参考

相关推荐
喵个咪2 小时前
Go-Wind HTTP 服务器从入门到精通
后端·http·go
hunterandroid2 小时前
Hilt 依赖注入:从手动 new 到自动装配
后端
喵个咪2 小时前
Go-Wind gRPC 服务器从入门到精通
后端·go·grpc
喵个咪2 小时前
Go-Wind GraphQL 服务器从入门到精通
后端·graphql
青青子衿悠悠我心2 小时前
Docker与Kubernetes的十年战争与融合
后端
AI小老六2 小时前
SkillOpt 架构拆解:把 Skill 文本当参数,用执行轨迹训练 Agent
后端·算法·ai编程
云技纵横2 小时前
@Transactional 到底要不要加 rollbackFor?一次数据不一致事故讲清楚
后端·面试
Csvn2 小时前
日志分析进阶 — Logwatch 与 GoAccess 实战
后端
Moment2 小时前
牛逼,NextJs 从 16.3 开始全面拥抱 Agent Native 🥰🥰🥰
前端·后端·面试