从 Dep 迁移到 Go 模块:综合指南
从 Dep 到 Go 模块的过渡为 Go 项目的依赖管理提供了显着的优势。以下是有效导航此迁移的分步指南:
-
升级到 Go 版本 1.11 或更高版本:
- 确保您使用的是 Go 版本 1.11 或更高版本,因为它支持以下 Go 模块
-
将代码移至 GOPATH 之外或启用 Go 模块:
- 将项目代码移至 $GOPATH 之外.
- 或者,设置环境变量 $GO111MODULE=on启用Go模块。
-
初始化Go模块:
- 执行命令'go mod init [模块路径] ' 初始化一个新的 Go 模块。这将从 Gopkg.lock 文件导入依赖项。
-
Tidy 依赖项:
- 运行 'go mod tidy' 以删除不必要的导入并添加间接
-
删除供应商文件夹(可选):
- 删除供应商文件夹(rm -rfvendor/ 或移至垃圾箱),因为它不再是必要的。
-
构建和测试:
- 使用“go build”执行测试构建以验证迁移是否正确有成功。
-
删除过时文件:
- 删除旧的 Gopkg.lock 和 Gopkg.toml 文件,它们是对于 Go 来说已经过时了
其他注意事项:
- Go 模块通过分析 Gopkg.lock 文件导入了您的 Dep 依赖项,并且生成了一个 go.mod 文件。
-
对于有供应商的项目文件夹:
- 运行“go modvendor”将依赖项复制到供应商文件夹中。
- 使用“go build -mod=vendor”使用供应商文件夹构建项目。
以上是如何将我的 Go 项目从 Dep 迁移到 Go Modules?的详细内容。更多信息请关注PHP中文网其他相关文章!