约 211 字 预计阅读 1 分钟
Go基本环境配置
下载
环境变量配置
1
2
3
4
5
|
export GO111MODULE=on
export GOPROXY=https://goproxy.cn
export GOROOT=/usr/local/go
export GOPATH=~/go/path
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
|
环境变量生效
1
2
|
source /etc/profile ##在当前bash环境下读取并执行profile中的命令。
go env
|
初始化项目
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
package main
import "github.com/gin-gonic/gin"
func main() {
// 创建一个默认的Gin引擎
r := gin.Default()
// 定义一个简单的GET请求路由
r.GET("/", func(c *gin.Context) {
c.String(200, "Hello, Gin!")
})
// 启动HTTP服务器,监听在 8080 端口
r.Run(":8080")
}
|
1
2
3
|
go mod init example.com/gin_demo
go mod tidy
go build
|
编译
1
|
go build -o main.exe main.go
|
运行
- 直接运行编译后的可执行程序
- go run 运行源代码
vim配置
vim配置vim-go推出时语法检查
相关工具
1
|
let g:syntastic_go_checkers = ['govet', 'errcheck', 'go']
|
1
2
|
go install github.com/nsf/gocode@latest
go install github.com/golang/lint@latest
|
1
|
malformed import path "go: cannot find main module, but found .git/config in /data/test": invalid ch
|
常见问题
GO111MODULE
当我们配置好go环境,可以正常使用go命令,但是使用 sudo 权限执行 go 命令,出现“sudo: go:找不到命令”时:
1
2
|
sudo vim /etc/sudoers
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/go/bin"
|
go mod 模式下如何引入本地包名
go语言前景
go框架
网络安全
游戏框架
日志库
字节内部框架
- Hertz:应用在字节跳动自研 Golang HTTP 框
- Ginex
- KiteX:字节自有 RPC 框架
参考