go modules使用简介

一、go module简介

go官方,在1.11版本,引入了一个概念GOMODULE,可以解决上述的两个问题:

  1. 项目可以放在任意的位置,不依赖GOPATH

  2. 包管理方便,不需要事先下载,只需要在代码中引入(可以指定版本),使用相关命令,即自动下载。

  3. 可以通过环境变量来启用GOMODULE,GO111MOUDLE

    1. on ==>打开
    2. auto==》自动
    3. off==>不使用

我们使用的是1.12.5(实验性使用GOMODULE), 目前官网1.13.3(正式支持GOMODULE)

二、配置go module的环境变量

1.windows:
  1. 在环境变量中添加两个变量
    1. 变量名:GO111MODULE
      值: on
    2. 变量名:GOPROXY
      值:https://goproxy.io
      或者 https://goproxy.cn(七牛云)
      go modules使用简介_第1张图片
2.linux(ubuntu)下:

在~/.bashrc 里面增加环境变量

 		export GOPROXY=https://goproxy.cn
 		export GO111MOUDLE=on

三、使用测试

1.在非GOPATH目录下创建一个gomoduletest目录,创建文件main.go
package main

import (
	"github.com/astaxie/beego"
)

func main() {
	beego.Run()
}
2.goland打开新的go module项目。

Proxy默认是direct模式,改为添加代理
go modules使用简介_第2张图片

3.执行命令(下文中的hhhhhh替换为你的项目目录)
3.1初始化项目
go mod init hhhhhh

成功后提示,此时项目目录下会得到一个文件go.mod
go modules使用简介_第3张图片

3.2 下载依赖包。此时会下载依赖包,下目录为$GOPATH/pkg/mod下面
go mod tidy

成功效果
go modules使用简介_第4张图片

3.3 将依赖包下载到项目目录

此时会在hhhhhh 下面生成vendor目录,里面是当前项目依赖包(具体版本)

go mod vendor

效果图
go modules使用简介_第5张图片

3.4 编译项目

-o 参数指输出指定的可执行文件。run.exe可自由替换

go build --mod vendor -o run.exe

在这里插入图片描述
接下来可直接执行exe文件来运行

你可能感兴趣的:(go语言)