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,不同项目可引用不同版本。

相关推荐
SimonKing几秒前
觅得又一款轻量级数据库管理工具:GoNavi
java·后端·程序员
小码哥_常1 分钟前
面试必知!Java线程池深度剖析
后端
Moment33 分钟前
Cursor 的 5 种指令方法比较,你最喜欢哪一种?
前端·后端·github
IT_陈寒36 分钟前
Vite快得离谱?揭秘它比Webpack快10倍的5个核心原理
前端·人工智能·后端
摸鱼的春哥1 小时前
Agent教程17:LangChain的持久化和人工干预
前端·javascript·后端
风象南2 小时前
OpenClaw 登顶 GitHub Star 榜首:一个程序员 13 年后的"重新点火"故事
人工智能·后端
Victor3562 小时前
MongoDB(25)什么是单字段索引?
后端
Victor3562 小时前
MongoDB(26)什么是复合索引?
后端
程序员爱钓鱼3 小时前
Go操作Excel实战详解:github.com/xuri/excelize/v2
前端·后端·go
oak隔壁找我10 小时前
MySQL中 SHOW FULL PROCESSLIST` 输出中 `State` 列的所有可能值
后端