golang 在windows中设置环境变量的操作
作者:soulbboy 发布时间:2024-04-28 09:12:29
安装完成后需要在系统环境变量中设置
GOPATH为项目目录
GOROOT为安装目录
path中设置好安装目录到bin目录
打开cmd,输入go env,出现如下配置生效
补充:Golang 环境变量须知
1.前言
无论你是使用 Windows、Linux 还是 Mac 操作系统来开发 Go 应用程序,在安装好 Go 安装语言开发工具之后,都必须配置好 Go 语言开发所要求的 环境变量,才算初步完成 Go 开发环境的搭建。
但对于一些初学者来说,可能不太明白 Go 语言中常用的环境变量的作用以及如何设置环境变量,下面在 Windows 环境下来讲讲。
2.查看环境变量
安装完 Go 后,我们可以使用 go env 命令查看当前 Go 的所有默认环境变量。
go env
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\dablelv\AppData\Local\go-build
set GOENV=C:\Users\dablelv\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=D:\go\pkg\mod
set GONOPROXY=git.code.oa.com,git.woa.com
set GONOSUMDB=git.code.oa.com,git.woa.com
set GOOS=windows
set GOPATH=D:\go
set GOPRIVATE=git.code.oa.com,git.woa.com
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=D:\code\kknock\KnockKnock\application\group_srv\go.mod
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\dablelv\AppData\Local\Temp\go-build853783354=/tmp/go-build -gno-record-gcc-switches
也可以查到指定环境变量的值。
go env GOROOT
C:\Program Files\Go
Go 语言中可以设置的环境变量有很多,每个环境变量都有其作用,不过很多我们可能都用不到,一般需要了解下面几个最常用的就够了。
GOROOT
GOPATH
GO111MODULE
GOPROXY
GOPRIVATE
GOBIN
GOOS
GOARCH
关于环境变量的详细说明,可使用命令go help environment查询。
GOROOT
GOROOT 表示 Go 语言的安装目录。
GOROOT 的作用是用来索引 Go 语言的安装目录下的相关资源,比如 bin 目录的工具(如 go 命令),src 目录下的源码等。
GOPATH
GOPATH 用于指定我们的开发工作区,可以有多个。
按照 Go 开发规范,GOPATH 目录下一般分为三个子目录 src,pkg,bin。
src 目录存放我们需要开发的项目源码,pkg 存放依赖的包和编译后的静态库文件,bin 放源代码编译后台的可执行文件。
下面是一个 GOPATH 目录示例布局。
GOPATH=/home/user/go
/home/user/go/
src/
foo/
bar/ (go code in package bar)
x.go
quux/ (go code in package main)
y.go
bin/
quux (installed command)
pkg/
linux_amd64/
foo/
bar.a (installed package object)
注意:
(1)如果 GOPATH 未显示设置,则默认为用户主目录中名为 go 的子目录。Unix 下为$HOME/go,Windows 下为%USERPROFILE%\go(一般为C:\Users\YourName\go),Plan 9 下为$home/go。
(2)使用模块时,GOPATH 不再用于解析导入,但是它仍然用于存储下载的源代码(在GOPATH/pkg/mod中)和编译的命令(在GOPATH/bin中)。
(3)使用命令go help gopath可查看 GOPATH 详细说明。
GO111MODULE
在 go1.11 的时候推出了这个 go modules 来解决依赖管理的问题。
通过变量 GO111MODULE 来控制 Go Module 的开启和关闭,取值 off、on 或 auto。
从 Go 1.13 开始,Go Module 作为 Golang 中的标准包管理器。
GOPROXY
go get 下载依赖时使用的代理地址列表,使用逗号 (,) 或竖杠 (|) 分隔。
当用 go 命令查找依赖模块时,它会按顺序访问 GOPROXY 列表中的每个代理,直到收到成功的响应或出现终端错误。
GOPROXY 中可能会存在两个关键字来代替代理URL:
off:不允许从任何源下载依赖的模块
direct: 直接从版本控制存储库下载,而不是使用模块代理
GOPROXY 缺省值为https://proxy.golang.org,direct。
GOPRIVATE
go get 通过代理服务拉取仓库时,因为代理服务不可能访问到私有仓库(一般为企业内部代码管理平台),会出现 404 错误。
go1.13 版本提供了一个方便的解决方案:GOPRIVATE 环境变量。
如:
setx GOPRIVATE=gitlab.com,git.woa.com
GOBIN
用于存储我们使用go install命令安装的程序。
如果没有设置 GOBIN,程序一般会安装到为GOPATH/bin目录。
GOOS
当前的操作系统。例如 linux、darwin、windows、netbsd、freebsd、openbsd、solaris、plan9 等。
注意 mac os对应的值是 darwin。
GOARCH
表示 CPU 架构。如 amd64、386、arm、ppc64 等。
3.小结
环境变量的设置,可以影响我们开发和编译项目的过程与结果,所以还是很有必要了解一下的。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/keepd/article/details/79430254


猜你喜欢
- 安装wgetyum -y install wget创建一个download目录用于下载各种安装包mkdir download切换到刚创建的d
- 1. 导入库import numpy as np #矩阵运算import matplotlib.pyplot as plt #可视化impo
- 本文示例可见一斑了,主要是通过Java对SQL语句进行操作,和普通的增删改查的原理是一样的:import java.sql.*; publi
- 常见的数据增强操作有:按比例放大或缩小图片、旋转、平移、水平翻转、改变图像通道等。1.按比例放大和缩小扩展缩放只是改变图像的尺寸大小。Ope
- documentFragment 是一個無父對象的document對象.他支持以下DOM2方法:appendChild, cloneNode
- 前言最近有文字转图片的需求,但是不太想下载 APP,就使用 Python Pillow 实现了一个,效果如下:PIL 提供了 PIL.Ima
- 是否也像拥有自己的机器人呢?不挨个展示了。比如说你想实现一个夸人的功能:"""作者:川川时间:2021/4/6
- 基于邮件通知的服务监控和告警系统主要功能点:配置专用日志格式记录耗时日志格式:'simple':{'format
- 问题描述  最近需要给程序新增功能,用于将旧格式的数据转换为新格式,同时删除旧格式的数据(新旧格式的数据
- py文件不是html文件,当然不能在浏览器里打开。py文件可以用任何编辑器打开,py文件是和txt一样都是普通的文本文件,只是python解
- 有这种要求,更新自己本身的字段的某个值进行加或者减常规方法:UPDATE tbl_kintai_print_hisSET &nb
- 本文实例讲述了Python3.5装饰器原理及应用。分享给大家供大家参考,具体如下:1、装饰器:(1)本质:装饰器的本质是函数,其基本语法都是
- 本文实例讲述了python判断字符串是否纯数字的方法。分享给大家供大家参考。具体如下:判断的代码如下,通过异常判断不能区分前面带正负号的区别
- 一、图图:数据(张量Tenrsor)+ 操作(节点Operation) (静态)图可以用:1、默认图;2、自定义图。1、默认图查看默认图的方
- 一、前言今天分享一个Python 制作透明背景的电子印章的代码,代码是通过网络获得并整理的,大家可以参考和学习。二、步骤解析代码我已调试过了
- 前言此次的目标是爬取指定城市的天气预报信息,然后再用Python发送邮件到指定的邮箱。下面话不多说了,来一起看看详细的实现过程吧一、爬取天气
- 链表的反转是一个很常见、很基础的数据结构题,输入一个单向链表,输出逆序反转后的链表,如图:上面的链表转换成下面的链表。实现链表反转有两种方式
- 前言在几周前,我开始工作于一个证券投资组合网站。虽然我只能使用 React 完成整个网站,但我决定使用 Go 来创建一个可以处理某些任务(例
- 代码如下:--根据MAX(MIN)ID CREATE PROC [dbo].[proc_select_id] @pageindex int=
- 目录MySQL 基础常用命令1. SQL语句2. 建表3.字段属性4.修改表:alter table5. 增删改查:字符串全部使用'