go - 如何将已经存在的 golang 项目从 go 路径迁移到 go 模块

标签 go go-modules

我有一个已经存在的 golang 项目想要将它迁移到 go mod,我关注了这篇文章 migrate to go modules但这里的问题是我每次尝试运行或构建项目时都会收到此错误

cannot load go-temp/pkg/custom_package: malformed module path "go-temp/pkg/custom_package": missing dot in first path element



custom_package 是一个内部包,并在其他几个包中导入

 import (
    "github.com/gin-gonic/gin"
    "github.com/joho/godotenv"
    "go-temp/pkg/custom_package"
    "go-temp/src/another_package"
    "go-temp/src/routes"
    "log"
    "os"
   )

如何在不遍历所有这些包的情况下解决这个问题,并将它们从相对路径更改为绝对路径,从模块域开始

最佳答案

一个简单的go mod init PROJECT_NAME进目录就够了。然后go cleango buildgo-temp必须是使用 go mod init go-temp 创建的 go 模块.比您需要使用 go.mod 导入它文件。

注意:我不知道“go-temp”是否是一个有效的名称,可能不允许输入名称。

关于go - 如何将已经存在的 golang 项目从 go 路径迁移到 go 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59545793/

相关文章:

go - 使用 Go Modules 时外部基准测试的最佳实践

go - 构建命令行参数 : cannot load local package: cannot find module providing package

go - 键入结构的二级 slice

go - vim-go GoDebugBreakpoint 无法切换

struct - 有没有办法强制转换结构以通过 channel 发送

go - 如何覆盖 go 模块中的依赖项?

go - 模块: how to force version of dependent lib

go - 如何使用 godoc 与 go 模块一起提供文档?

go - 将结构的命名字段传递给其他函数

go - 为什么golang append same slice result会共享一个内存地址?