MODULE的三种状态
mod有三种状态,使用如下命令在终端中更改。
go env -w GO111MODULE=状态
GO111MODULE=off
go命令行将不会支持module功能,会沿用旧版本那种通过vendor目录或者GOPATH模式寻找依赖包。
即:把依赖包存放在GOPATH/src路径下,通过<go get 依赖包路径>获取
GO111MODULE=on
go命令行有且仅会使用modules,而不会去GOPATH目录下查找。
即:把依赖包存放在GOPATH/pkg/mod路径下。
GO111MODULE=auto
mod的默认状态,go命令行将会根据当前目录来决定是否启用module功能。以下两种情形下会使用module功能:
1、当前目录在GOPATH/src之外且该目录包含go.mod文件
2、当前文件在包含go.mod文件的目录下面
注:不使用module功能时,文件夹中不应该出现go.mod文件!!!否则会报错。
不使用module引入第三方库:
举个例子:
在GO111MODULE不是on状态的前提下,在PATH/src
下建了gosum.go文件:
package main
import (
"fmt"
"gonum.org/v1/gonum/stat"