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

相关推荐
子兮曰2 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰2 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
小羊没烦恼!2 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
爱勇宝2 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
胡写代码2 天前
别再前后端各写一套表单校验了
java·后端
伞伞悦读2 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
ttwuai2 天前
Go开源后台管理系统推荐:怎么按技术栈和边界比较4个官方仓库?
golang·gin
大勇前进2 天前
原生 PHP 还是 Laravel?小项目到底要不要上框架
后端
yuzhi_liu2 天前
我用 LangGraph4j 实现 Multi-Agent Supervisor
后端
alsmile2 天前
Node-RED 之外,国产规则引擎的新方案:基于标准语法,Go 先行实现
后端·开源·go