vs code配置go开发环境以及问题解决 could not import cannot find package in GOROOT or GOPATH

vs code配置go开发环境以及问题解决 could not import cannot find package in GOROOT or GOPATH

配置过程:

  1. 安装vs code
  2. 安装go的包并安装,golang.org/dl/,执行go version验证已安装好
  3. 配置go环境变量
    3.1. 新建系统变量GOROOT,设置为go的安装路径,例如:D:\software\go
    3.2. 新增系统变量GOPATH,设置为go的项目路径,例如D:\goWorkSpace
    3.3. 检查系统变量中Path,一般可以看到 Go 的路径已经配置好了,我们不需要动,这是 Go 在安装时自动配置的,例如D:\software\go\bin
    3.4. 用户变量里的 GOPATH 也换成自定义的目录,例如D:\goWorkSpace
    3.5. 编辑用户变量里的 Path,%USERPROFILE%go\bin改为%GOPATH%\bin
    3.6. Win + R,输入 cmd 打开命令行,输入 go env 可以检查一下,主要是看一下GOROOT和GOPATH这两个变量
  4. vs code打开终端并执行
    4.1. go version
    4.2. go env -w GO111MODULE=on (只有用module模式才设置这个,下面的问题就是这里导致的)
    4.3. go env -w GOPROXY=https://goproxy.cn,direct
    4.4. 在vscode界面按键盘ctrl+shift+p,输入Go: install/update tools,回车如下图,选择要安装的依赖(这里全选),等待安装完成

遇到的问题:

包无法识别到,could not import cannot find package in GOROOT or GOPATH

解决办法:

go env -w GO111MODULE=off

了解:

Go 语言中的 GOPATH 模式 和 Module 模式(Go Modules) 是两种不同的依赖管理和项目构建机制,它们的核心区别如下:

GOPATH 模式(传统模式),Go 1.11 之前唯一的管理方式。所有项目代码必须放在 GOPATH/src 目录下(例如 GOPATH/src/github.com/your/project)。

依赖的第三方包同样下载到 $GOPATH/src 中,无版本控制,默认使用最新代码(通常是 master 分支)。

Module 模式(Go Modules),Go 1.11 引入,1.16 后成为默认模式。项目可放在任意位置(不再依赖 GOPATH)。通过项目根目录的 go.mod 文件管理依赖和版本。依赖下载到全局缓存 $GOPATH/pkg/mod,不同项目可引用不同版本。

相关推荐
看浪的路人4 小时前
第8讲:RAG 生产化——Go 实现亿级向量召回 + 混合检索 + 重排序 Pipeline
开发语言·后端·golang
tachibana24 小时前
Go 语言 Map 的扩容过程是怎样的?
开发语言·后端·golang·go·语言
念何架构之路4 小时前
go-grpc服务端调用链
开发语言·后端·golang
泡海椒4 小时前
JQuickExcel 大文件排障与调优:从实际路径定位 OOM、临时盘和慢任务
开发语言·数据库·缓存·oracle·excel
羑悻4 小时前
atomic凭什么线程安全?无锁编程为何有时比锁还慢?C++高并发必懂的原子操作真相!
后端
SamDeepThinking4 小时前
synchronized 和 lock 有什么区别?
java·后端·面试
m0_587383004 小时前
无人自助拼豆系统的全栈开发方案
java·后端·struts·小程序·架构
雪碧透心凉_4 小时前
PythonWin32API窗口与鼠标操作
开发语言·python·计算机外设
人道领域5 小时前
【面试八股速通篇01】锁与并发工具
java·开发语言·面试·c#
kimnoic5 小时前
PHP 8.3 数据库备份失败怎么排查
开发语言·php