go开发环境

Go环境

环境下载安装

# 下载地址:https://golang.google.cn/dl/
windows:
	go1.20.5.windows-amd64.msi:安装版 安装流程中可添加环境变量全局使用
	go1.20.5.windows-amd64.zip: 免安装 解压即可用 全局使用需添加环境变量
Linux:
	1. 下载
	wget https://golang.google.cn/dl/go1.21.0.linux-amd64.tar.gz
	2. 解压到指定目录
	tar -C /usr/local -zxvf go1.21.0.linux-amd64.tar.gz
	3. 添加环境变量
	vim ~/.bash_profile 或者 vim /etc/profile
		export GOROOT=/usr/local/go
		export PATH=$PATH:$GOROOT/bin
	source ~/.bash_profile 或者 source /etc/profile
	或者
	echo "export GOROOT=/usr/local/go\nexport PATH=$PATH:$GOROOT/bin" >> ~/.bash_profile && source ~/.bash_profile
	
	4. 验证
	go version


常规命令

1. 查看go版本
go version

2. 查看配置项
go env 
	-json:json形式输出(可选)

3. 修改配置项
3.1 go依赖管理库(决定项目依赖管理是用go Modules模式或GOPATH模式)
go env -w GO111MODULE=on 
	on: go忽略$GOPATH和vendor文件夹 根据go.mod管理依赖
	off: go从$GOPATH和vendor文件夹寻找依赖
    auto: 根据$GOPATH/src外根目录是否存在go.mod 开启或关闭
3.2 go依赖下载源
go env -w GOPROXY=https://goproxy.cn,direct
3.3 go项目工作目录(go.1.11版本后有module、可通过go.mod管理特定项目的依赖)
go env -w GOPATH=
3.4 go项目构建过程中的缓存存储目录(go build xx.go->xx.exe)
go env -w GOCACHE=
3.5 存储go环境变量的配置文件(不建议修改)
go env GOENV 
3.6 go的安装目录(不建议修改)
go env GOROOT
3.7 恢复配置项默认值
go env -u GOROOT
3.8 单元测试(需要切换目录到源码内包含以Test开头的函数名的*_test.go文件)
go test 

4. 下载依赖
go get xxx/package@latest: 最新版本
go get xxx/package@master: master最新commit版本
go get xxx/package@v1:tag为v1的commit版本
go get xxx/package@1234be: hash值为1234be的commit版本
go get xxx/package/v1: 指定版本
go get -u : 更新版本

5. 查看依赖可下载版本
go list -m -versions xxx/package

6. 网络代理临时方案(配置后再下载依赖 只对当前控制台有效)
set http_proxy=http://ip:port
set https_proxy=http://ip:port

goModule命令

1. 初始化module(生成go.mod) 
go mod init <moduleName>
2. 下载依赖到本地($GOPATH/pkg/mod和$GOPATH/pkg/sum)
go mod download
3. 编辑go.mod
go mod edit 
	-json
	-require
	-exclude
4. 文本模式输出模块下依赖
go mod graph
5. 同步当前正在使用的依赖(删除异常或不使用的依赖)
go mod tidy
6. 验证依赖
go mod verify
7. 清除当前项目所有依赖($GOPATH/pkg/mod下的依赖-谨慎操作)
go clean -modcache

ps:
go module 安装依赖的原则是先拉最新的release tag 
若无tag则拉最新的commit 
go 会自动生成一个 go.sum 文件来记录 dependency tree和对应的hash值
go.mod: 依赖管理文件
	提供module require replace exclude四个命令
	module: 指定包名
	require: 指定依赖项
	replace: 替换依赖项
	exclude: 忽略依赖项
go.sum: 记录依赖的版本和hash值

go实例

package main

import (
	"fmt"
)
/*
1. 项目初始化
mkdir <projectName>
cd <projectName>
go mod init <projectName>
在projectName目录下生成go.mod文件 用于管理依赖包
2. 依赖包相关
通过go get <包名> 下载依赖或者通过 go mod tidy 只下载import的包
go list -m -version <包名> 用于查看依赖包的所有历史版本信息
go list -m -u -json <包名> 用于json格式化查看依赖包的信息
*/
func main() {
	fmt.Println("hello go...")
}

posted @   爱编程_喵  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
jQuery火箭图标返回顶部代码

jQuery火箭图标返回顶部代码

滚动滑动条后,查看右下角查看效果。很炫哦!!

适用浏览器:IE8、360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗.

点击右上角即可分享
微信分享提示