一、GOROOT是什么?
GOROOT是指Go编程语言的根目录,里面包含了Go的标准库、可执行文件和其他重要的资源。GOROOT的目录结构包含三个主要的文件夹:bin、pkg和src。
├── api # 文档
├── bin # Go可执行命令
├── lib # Go依赖库
├── archive # 存档文件库
├── compress # 压缩库
├── database # 数据库库
├── debug # 调试库
├── encoding # 编码库
├── go # 编译器与相关命令及库
├── html # html相关库
├── image # 图片库
├── internal # 内部库
├── math # 数学库
├── net # 网络库
├── os # 操作系统库
├── runtime # 运行时库
├── sync # 同步库
├── text # 文本处理库
├── time # 时间库
├── unicode # unicode相关库
└── vendor # 导入的第三方库
├── misc # 其他工具
└── src # Go源代码
├── archive # 存档文件库
├── cmd # 命令源代码
├── compress # 压缩库源代码
├── crypto # 加密库源代码
├── database # 数据库库源代码
├── debug # 调试库源代码
├── encoding # 编码库源代码
├── go # 编译器、其它命令和运行时
├── html # HTML 相关源代码
├── image # 图片库源代码
├── index # godoc 网站所需的索引源代码
├── internal # 内部库源代码
├── math # 数学库源代码
├── misc # 各种小工具源代码
├── net # 网络库源代码
├── os # 操作系统库源代码
├── path # 路径库源代码
├── runtime # 运行时库源代码
├── sync # 同步库源代码
├── syscall # 系统库源代码
├── testing # 测试库源代码
├── text # 文本处理库源代码
├── time # 时间库源代码
├── unicode # Unicode 相关源代码
├── vendor # 导入的第三方库
└── runtime # 运行时库
图1. GOROOT的目录结构
二、GOROOT无法配置
GOROOT的工作方式和java中的JAVA_HOME非常类似,是全局对象。如果GOROOT没有正常配置或安装,则Go命令就会报错。
$ go env
# command-line-arguments
/home/username/go/src/hello
如果输出的日志中没有GOROOT和GOPATH,或者设定了错误的路径,则说明GOROOT没有被正确配置或安装。
三、GOROOT SDK
在安装过程中,GOROOT SDK是在GOROOT目录下预装的扩展工具包。由于它是预先配置的,因此它可以快速地启动和使用开发环境。
有两种方法可以安装GOROOT SDK:
- 在官方网站上下载安装GOROOT SDK包:您可以在Go语言官方网站上下载并手动安装GAHOST SDK包。下载后,您需要将GHOST SDK解压缩到GOROOT目录下。
- 使用GOROOT安装工具安装GOROOT SDK:您可以使用Go命令中的go get工具来安装GOROOT SDK。这种方式会自动将GOROOT SDK安装到GOROOT的bin目录下。例如,下面的命令将安装Go的最新版本:
$ go get golang.org/dl/
$ go1.15.7 download
四、GOROOT Not Found
如果您使用的是Linux或Unix系统,则可能会遇到如下错误信息:
GOROOT not set, cannot proceed
这个错误信息的意思是系统找不到GOROOT路径。在你的shell配置文件中设置GOROOT变量(在bash下),如下所示:
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin
五、Root
“Root”在计算机领域有许多含义,其中一种含义是指文件系统的根目录。在Linux中,根目录是/,而在Windows中,根目录是C:\。
GOROOT在Go中的含义与file system root类似:它是所有Go程序和工具的根目录。因此,GOROOT的正确配置对于程序的编译和工具的使用非常重要。
六、Root翻译
"根目录"是对root的中文翻译。当我们说“安装在本地GRROT目录下”时,翻译成中文就是“安装在本地根目录下”。
七、360 Root一键Root
360 Root是安全易用的一键Root工具,它可以帮助您在移动设备上快速获取Root权限。它不仅支持所有主流的Android设备,还支持多种Root方式,使您的设备安全、可靠。
与GOROOT没有任何关系。