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

相关推荐
余槐i3 分钟前
Spring Boot 3.2 偶发500无日志:线程池复用导致请求上下文丢失
spring boot·redis·后端·mysql·性能优化
熊猫钓鱼>_>22 分钟前
三方库 NDK 原生模块跨平台适配与调试【鸿蒙心迹】
开发语言·华为·ai编程·harmonyos·鸿蒙·openharmony·鸿蒙心迹
HANDY0920028 分钟前
从“不照人”到“剂量达标”:扇叶遮挡式UV-C空气消毒的工程边界与可验证评估框架
开发语言·人工智能·嵌入式硬件·智能家居
十二同学啊43 分钟前
Go 工程化详解:项目结构、代码规范、测试体系与 CI/CD 实践
ci/cd·golang·代码规范
1024奇点10 小时前
【仓颉语言入门 · 第二篇 第 22 课】
开发语言·ide·开源
实名上网宋凯宣10 小时前
Django
后端·python·django
Warren2Lynch10 小时前
C4 模型详解:利用 Visual Paradigm 可视化软件架构的综合指南
开发语言·uml
Knight_AL11 小时前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
利威尔xu11 小时前
Go IM 源码实战(14):本地缓存快 3000 倍,失效却难 10 倍
后端·缓存·微服务·面试·golang