搭建Golang环境的几个问题记录

Centos安装golang

centos安装golang非常简单,直接yum install -y golang即可。安装完毕之后,修改一下/etc/profile,在文件末尾处添加如下语句:

1
2
3
4
#golang
export GOROOT=/usr/lib/golang
export GOPATH=/opt/golangproject # 这个是项目的路径
export PATH=$PATH:$GOROOT/bin

然后source /etc/profile使环境变量生效,但是这里要注意一下,如果你不是root,那么使用sudo source /etc/profile是会报错sudo: source: command not found ,要用sudo -s source /etc/profile才可以,如图:

然后可以go env看到所有的环境变量情况:

此时如果你要下载包,比如一个钉钉机器人的包:go get -u github.com/royeo/dingrobot,如果GOPATH是有权限的,就会直接下载到$GOPATH/src里,如果当前用户没有权限,那么就会下载到/root/go/src里,只能在build的环节时手动mv过来。

Vscode环境搭建的时候,提示无法安装go插件

安装不了go插件说白了其实就是墙的问题,所以要学习Golang的人会长时间的面对这种外界问题。

配置Vscode我这里就不说了,满大街都是。但是安装完Vscode后,再安装go tools失败,就只能换一个代理:

1
2
$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.io,direct

设置完成后重启Vscode,再重新安装go tools即可。

但是这个时候还有一个问题,虽然你成功安装了go tools,而你却发现你在build的时候报错:go: cannot find main module; see ‘go help modules’

由于之前设置过GO111MODULE=on,所以使用下面的命令解决

1
$ go mod init hello

此时在项目文件夹里会生成了一个go.mod文件,然后再执行go build就成功了!

参考资料

https://gitee.com/zoufuxing/dingrobot/blob/master/README.md
https://unix.stackexchange.com/questions/202332/sudo-source-command-not-found
https://www.cnblogs.com/oxspirt/p/9340250.html
https://blog.csdn.net/u011897301/article/details/105758056

感谢您请我喝咖啡~O(∩_∩)O,如果要联系请直接发我邮箱chenx1242@163.com,我会回复你的
-------------本文结束感谢您的阅读-------------