Go 语言项目开发实战
孔令飞
腾讯云专家工程师,前 Red Hat、联想云工程师
41031 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 61 讲
Go 语言项目开发实战
15
15
1.0x
00:00/00:00
登录|注册

特别放送 | Go Modules实战

使用vendor
删除不使用的依赖
升级到不兼容的版本
添加一个新的major版本依赖
更新依赖
查看所有依赖模块
增加一个依赖
新增子目录创建新的package
go.mod文件生成
创建一个新模块
设置环境变量
打开Go Modules
hello_test.go
hello.go
Go包依赖管理
初始化Go包为Go模块
配置Go Modules
准备一个演示项目
课后练习
总结
Go Modules用法和操作方法
Go Modules知识介绍
孔令飞
Go Modules实战

该思维导图由 AI 生成,仅供参考

你好,我是孔令飞。
今天我们更新一期特别放送作为加餐。在 特别放送 | Go Modules 依赖包管理全讲中,我介绍了 Go Modules 的知识,里面内容比较多,你可能还不知道具体怎么使用 Go Modules 来为你的项目管理 Go 依赖包。
这一讲,我就通过一个具体的案例,带你一步步学习 Go Modules 的常见用法以及操作方法,具体包含以下内容:
准备一个演示项目。
配置 Go Modules。
初始化 Go 包为 Go 模块。
Go 包依赖管理。

准备一个演示项目

为了演示 Go Modules 的用法,我们首先需要一个 Demo 项目。假设我们有一个 hello 的项目,里面有两个文件,分别是 hello.go 和 hello_test.go,所在目录为/home/lk/workspace/golang/src/github.com/marmotedu/gopractise-demo/modules/hello
hello.go 文件内容为:
package hello
func Hello() string {
return "Hello, world."
}
hello_test.go 文件内容为:
package hello
import "testing"
func TestHello(t *testing.T) {
want := "Hello, world."
if got := Hello(); got != want {
t.Errorf("Hello() = %q, want %q", got, want)
}
}
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文详细介绍了Go Modules的实际应用,以及如何使用Go Modules管理Go项目的依赖包。通过一个具体案例,作者演示了Go Modules的常见用法和操作方法,包括初始化项目为Go Modules、配置Go Modules、管理包的导入路径等。文章还提到了一些国内开发者需要注意的问题,如设置镜像源和关闭Checksum校验。读者可以通过本文快速了解Go Modules的基本用法和操作步骤,对于想要学习Go语言项目管理的开发者来说,是一篇非常实用的文章。此外,文章还介绍了一些常用的操作,如查看所有依赖模块、更新依赖、添加新的major版本依赖、升级到不兼容的版本、删除不使用的依赖以及使用vendor等。通过这些操作,读者可以更好地理解和掌握Go Modules的使用方法。整体而言,本文为读者提供了全面的Go Modules操作指南,帮助他们更好地管理和维护Go语言项目的依赖关系。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Go 语言项目开发实战》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • 你赖东东不错嘛
    1. 项目根目录下,执行go get -d -u ./... 2. 在外网环境把package下载到vendor目录下,在无网环境用go vendor构建应用。

    作者回复: 是一种解决方法。 第2个问题,还有一种思路:在内网搭建Go Modules代理服务器

    2021-09-22
    5
  • 2035去台湾
    客户练习2目前我们使用了nexus代理

    作者回复: 对,可以选择搭建代理

    2021-09-21
    1
  • go test 没有自动下载依赖,是需要配置什么吗?

    作者回复: go mod tidy试试

    2022-04-14
    2
  • 陈东
    go构建约束问题,Build constraints exclude all Go files in ? 尝试以下办法解决不了 1、searcheverything 搜索后删除所有包, $GOPATH目录下,把对应的包删除,重新go get,还是不行. 2、go get -u -v github.com/karalabe/xgo 3、Right click -> Mark folder as not excluded. 4、引用包报错,重启电脑,查看goproxy配置,还不行重装goland 怎么解决,寻求老师帮助,谢谢。

    作者回复: 试试这个? 把 CGO_ENABLED=1 GOOS=linux

    2021-12-18
  • 功夫熊猫
    有没有办法就是直接导入本地包。而不是设置代理

    作者回复: 可以搭建本地代理,暂时没有其他办法

    2021-11-03
  • yss
    2. 我们内网机是与外网物理隔离的机器,使用 vendor在内网机构建是我们的解决方案。

    作者回复: 现在不建议使用vendor了

    2021-10-28
    2
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部