golang 常用配置

前言

记录一些常用环境变量配置或者命令,提高开发效率

环境变量

软件基础环境变量

# linux 修改环境变量
vim /etc/profile    

# 必要配置
export GOROOT="/usr/local/go" # go安装位置
export PATH=$PATH:$GOROOT/bin # go可执行文件加入全局

# 非必要配置
export GOPATH="/home/mygo"  # 项目位置
export PATH=$PATH:$GOPATH/bin # 项目可执行文件加入全局

# 环境变量生效
source /etc/profile 

# 检验
echo $GOROOT 
echo $GOPATH 
echo $PATH
go version 

开发配置

常用的一些开发配置也可以通过环境变量设置,这里采用go env对进行快速切换

# go 环境变量操作
go env              #查询
go env -w KEY=VALUE #写入

# go 设置 go get 代理
# 解决一些go get无响应问题
go env -w GOPROXY=https://goproxy.cn,direct

# go 过滤私有库不走代理(逗号隔开)
go env -w GOPRIVATE=*.gitlab.com,*.gitee.com

# 关闭校验or切换国内
# 解决go get sum校验慢问题
go env -w GOSUMDB=off                    #关闭包sum.golang.org
go env -w GOSUMDB="sum.golang.google.cn" # 国内提供的sum 验证服务
# 镜像源代理
# 官方提供的 jfrog
export GOPROXY=https://gocenter.io
# 官方提供的 golang 
export GOPROXY=https://proxy.golang.org
# 阿里云
export GOPROXY=https://mirrors.aliyun.com/goproxy/
# nexus社区提供的
export GOPROXY=https://gonexus.dev
# goproxy.io 的
export GOPROXY=https://goproxy.io/
# 基于athens的公共服务
export GOPROXY=https://athens.azurefd.net
# 七牛云赞助支持的
export GOPROXY=https://goproxy.cn

交叉编译

go 编译可执行文件时如果存在跨平台需要进行交叉编译到目标平台可运行的执行文件。

GOOS:目标平台的操作系统(darwin、freebsd、linux、windows)
GOARCH:目标平台的体系架构(386、amd64、arm)
CGO:交叉编译不支持

mac

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go  # linux
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go # win

linux

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go  # mac
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go # win

win

# mac
SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build main.go
# linux
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build main.go

猜你喜欢

转载自blog.csdn.net/qq_22211217/article/details/121594876