目录1 区分几个路径2 Go111MODULE3 解决方案方案一:关闭 go mod 模式方案二:使用go mod 模式总结1 区分几个路径 GOROOT:golang的安装路径,安
GOROOT
:golang的安装路径,安装之后就默认自带了GOPATH
:Golang的工作目录go_project // (go_project为 GOPATH目录)
– bin // golang编译可执行文件存放路径
– pkg // golang编译包时,生成的.a文件存放路径
– src // 源码路径。按照golang默认约定,go run,go install等命令的当前工作路径
出错:
导包运行时出错:package util is not in GOROOT (D:\MyApp\golang\src\util)
只搜索GOROOT环境,而不搜索GOPATH路径
分析:
包管理的问题,import 包,会对应的出现包管理的问题,使用GOPATH
问题
应对包管理:go mod——GO111MODULE
,go modules 是 golang 1.11 新加的特性。
模块是相关Go包的集合。modules是源代码交换和版本控制的单元。 go命令直接支持使用modules,包括记录和解析对其他模块的依赖性。modules替换旧的基于GOPATH的方法来指定在给定构建中使用哪些源文件。
GO111MODULE
有三个值:off, on和auto(默认值
)
当前目录在GOPATH/src之外且该目录包含go.mod文件
当前文件在包含go.mod文件的目录下面。
参看文章:go mod使用
命令行使用go env
查看环境,明显GO11MODULE没有设定
用 gopath 模式引入包从src目录下开始引入,需要
go env -w GO111MODULE=off
go env -w GO111MODULE=on
并且在目录下执行 go mod init
目录下产生两个文件
go.mod
go.sum
否则就会报错找不到包
参考:package ‘xxx’ is not in GOROOT
到此这篇关于Golang运行报错找不到包:package xxx is not in GOROOT解决的文章就介绍到这了,更多相关Golang运行报错找不到包内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Golang运行报错找不到包:package xxx is not in GOROOT的解决过程
本文链接: https://www.lsjlt.com/news/120946.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-05
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0