建设网站前端,asp.net制作的网站开发,项目可行性报告怎样写,百度关键字搜索排名一 安装go语言
go语言各个版本之间兼容性比较差。所以可能你需要安装固定的版本
1 安装最新版的go
brew install go2 查看go可以安装的版本
brew search go3 安装指定版本的go
brew install go1.134 查看安装的go语言的版本
go version5 查看go的安装路径
which go || w…一 安装go语言
go语言各个版本之间兼容性比较差。所以可能你需要安装固定的版本
1 安装最新版的go
brew install go2 查看go可以安装的版本
brew search go3 安装指定版本的go
brew install go1.134 查看安装的go语言的版本
go version5 查看go的安装路径
which go || where go6 查看go的环境变量
go env主要关注go语言的GOROOT GOPATH GO111MODULE这三个环境变量
go env | grep GOROOT // go语言的安装路径
go env | grep GOPATH // go语言的工作目录
go env | grep GO111MODULE // go mod的开启状态7 如果go version不管用 检查下环境变量是否配置了go语言的环境变量 二 go mod的使用
go mod可以理解为一个包管理工具(类似于java中的maven)
设置go mod的环境变量
go env -w GO111MODULEon
go env -w GOPROXYhttps://go-mod-proxy.byted.org,https://goproxy.cn,https://proxy.golang.org,directgo mod的详细可点击这里go mod使用
踩坑记录
1 执行go mod下载的时候提示
fatal: could not read Username for https://github.com: terminal prompts disabled
package github.com/XXX/OOOO/: exit status 128这个是因为利用homebrew下载go时 默认禁用了terminal prompts(终端提示)
解决方案在环境变量中开启终端提示
export GIT_TERMINAL_PROMPT12 执行go mod下载的时候某些部分的依赖不能下载
Cloning into scripts...
fatal: unable to access https://github.com/open-falcon/scripts.git/: SSL connect error发生这种情况是因为代理是在git中配置的。既然它是https代理而不是http
即使设置代理也是不好用的。git config http.proxy和git config --global http.proxy 是not work的
解决方案在~/.gitconfig中配置url的前置替换
[url gitcode.byted.org:]insteadOf https://code.byted.org/
[url gitgit.byted.org:]insteadOf https://git.byted.org/3 go get/install时提示
dial tcp: lookup code.byted.org on 8.8.8.8:53: no such host启用 Go Module 之后Golang 会默认通过 Go Mod Proxy 代理拉取代码但是由于公司的代码仓库只在公司内网有解析所以在使用 golang 默认 proxyhttps://proxy.golang.org由谷歌提供时无法在 8.8.8.8 解析 code.byted.org 等公司域名则会提示上面的错误。
解决方案
添加如下环境变量
export GO111MODULEon
export GOPROXYhttps://go-mod-proxy.byted.org,https://proxy.golang.org,direct
export GOPRIVATE*.byted.org,*.everphoto.cn,git.smartisan.com
export GOSUMDBsum.golang.google.cn4 安装kitex(可以用来生成thrift文件的工具类似于IDEA中生成thrift文件的插件)时提示如下的错误
...
gorepos/gocode/src/code.byted.org/kite/kitex/tool/pkg/parser/AST.go:312:39: not enough arguments in call to iprot.ReadMapBeginhave ()want (context.Context)
gorepos/gocode/src/code.byted.org/kite/kitex/tool/pkg/parser/AST.go:320:35: not enough arguments in call to iprot.ReadStringhave ()want (context.Context)
gorepos/gocode/src/code.byted.org/kite/kitex/tool/pkg/parser/AST.go:325:35: not enough arguments in call to iprot.ReadStringhave ()want (context.Context)
gorepos/gocode/src/code.byted.org/kite/kitex/tool/pkg/parser/AST.go:325:35: too many errors刚开始以为是go版本的问题升级到了go的1.14版本无果。其实是在goland的terminal中没有打开GO111MODULE(即使在go env时看到是开启在goland的termind也执行时也是不能正常获取到开启状态的)
解决方案
安装时执行
GO111MODULEon go get code.byted.org/kite/kitex/tool/cmd/kitexlatest