Go Lang 1.13
MacOS Mojave 10.14.6
环境变量
GOROOT
Go Lang 安装目录
GOPATH
Go 命令环境依赖,其中主要目录:
- bin 可执行相关
- pkg 编译包相关
- src 源码包相关
GO111MODULE
默认情况下,GO111MODULE=auto
自动模式
- auto 自动模式下,
$GOPATH/src
与go.mod 下 require的包选中选择性使用 - on 开启模式,1.12后,都会使用go.mod 里 require的包
- off 关闭模式
步骤1:初始化环境
1.创建项目
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello, world!")
}
2.初始化模块
# go mod init hello
初始化名为hello
的模块,并且生成go.mod
和go.sum
记录当前依赖包名及版本信息,由程序自动维护
手动改变 go.mod
后需要手动清空go.sum
再重新生成:
➜ # go mod tidy
hello2 imports
hello/utils: malformed module path "hello/utils": missing dot in first path element
3.引入包规则为模块名
+路径
格式,比如:
import (
"hello/utils"
"github.com/astaxie/beego"
)
- 引入
hello
模块,在utils
目录下的包 - 引入
github.com
模块,文件在astaxie/beego
目录下的包
注意:相同路径下仅能声明一个包
步骤2:配置VSCode
4.安装 VSCode-Go 插件, 添加一下配置:
"go.useLanguageServer": true,
"[go]": {
"editor.snippetSuggestions": "none",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true,
}
},
"gopls": {
"usePlaceholders": true, // add parameter placeholders when completing a function
// Experimental settings
"completeUnimported": true, // autocomplete unimported packages
"deepCompletion": true, // enable deep completion
}
更多配置说明