【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,但我忘记是在哪个目录删的。

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

参考

相关推荐
摇滚侠1 分钟前
《Spring Boot 3:高级与架构设计》第 3 章 Bean 的全生命周期原理 Bean 的全生命周期概览 阅读笔记 9
spring boot·笔记·后端
墨家句子8 分钟前
AnythingLLM 搭本地知识库:文档问答不准怎么调
linux·后端
知守观8 分钟前
OBS 同名文件互相覆盖,客户拿错了别人的报告:一次文件串号的排查与重构
java·后端
特立独行的猫A12 分钟前
Godot 游戏编辑器移植鸿蒙 PC:难度与可行性分析
后端·harmonyos
章鱼哥197115 分钟前
DeepSeek Harness 插件开发新手教程
后端·deepseek
特立独行的猫A24 分钟前
C++ 异步编程:std::future 与 std::promise 详解(含 RPC 客户端实现实践)
c++·后端
Anymous29 分钟前
支付为什么要验两次签?——从渠道验签到服务间信任边界与 RSA2
后端
m0_3807438730 分钟前
PHP7.1项目升级到8.3报错怎么解决
开发语言·php
泡海椒43 分钟前
JQuick-Excel 字段映射实战:用 MAPPING 固化 Excel 表头与业务字段契约
xml·java·开发语言·excel
lcj25111 小时前
【C++】set和map——详细使用说明
开发语言·c++·笔记·面试