Go modules

文章目录

Go modules

言简意赅,go-modules就是一个包管理工具,是用来解决我们通过 go get 下载第三方类库到go path后的第三方类库版本管理的问题

使用流程

首先,新建项目目录并且初始化模块

mkdir demo1 && cd demo1
go mod init demo

第一个指令:

go mod init 模块名

执行后,会生成一个go.mod文件:

module demo1

go 1.16

一开始的时候内容比较少,只有模块名和go版本

其次,新建一个main.go

package main

import (
	"net/http"

	"github.com/labstack/echo"
)

func main() {
	e := echo.New()
	e.GET("/", func(c echo.Context) error {
		return c.String(http.StatusOK, "Hello, World!")
	})
	e.Logger.Fatal(e.Start(":1323"))
}

在这里插入图片描述

可以看到一开始是报红的,即module下没有相关第三方类库

执行go mod tidy

go mod tidy

执行tidy后会检查项目中依赖,如果缺少相关依赖则引入,如果有些依赖没有用到,会删除,起到一个依赖整理的作用

可以看到执行完后,依赖被引入,也不报红了

在这里插入图片描述

再看下go.mod文件:

module demo1

go 1.16

require (
	github.com/labstack/echo v3.3.10+incompatible
	github.com/labstack/gommon v0.3.0 // indirect
	github.com/stretchr/testify v1.7.0 // indirect
	golang.org/x/crypto v0.0.0-20210506145944-38f3c27a63bf // indirect
)

在这里插入图片描述

required是自动加上的

执行go mod download可以将依赖下载到本地

go mod download

如果要查看当前模块依赖的第三类库可以执行go list

go list -m all

在这里插入图片描述

将搭建的项目跑起来:

go run main.go

在这里插入图片描述

访问localhost:1323即可得到hello world

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值