You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Go Module导入报错invalid version: go.mod has malformed module path

我多方查找"go.mod has malformed module path"错误的解决方案,始终没找到自行开发的Go库无法被导入的原因,为简化问题我创建了一个小型测试库仓库。
注:我参考了stripe官方Go SDK的结构进行开发。

问题描述

我自行开发了一个Go库,执行go mod init初始化后将代码和版本标签推送到代码托管平台,随后在其他项目中尝试导入该库时收到报错:go get: github.com/buphmin/test-go-pkg@v1.0.0: invalid version: go.mod has malformed module path "github.com/buphmin/test-go-pkg/v1" at revision v1.0.0。我之前不清楚问题出在哪里,也未找到对应的解决方案。

复现步骤

前提:已正确安装Go环境。

  • 创建本地文件夹
  • 执行go mod init <your_mod>初始化本地项目
  • 执行go get github.com/buphmin/test-go-pkg/v1拉取依赖
  • 触发上述报错
其他环境信息
  • Go版本:v1.16
  • 操作系统:ubuntu 18 LTS
go.mod文件内容

测试库的go.mod内容如下:

module github.com/buphmin/test-go-pkg/v1

go 1.16
问题原因及解决方案

这个错误的根因是违反了Go模块的语义化版本管理规则:

  • 对于v1.x.x版本的Go模块,go.mod的module路径不需要额外加/v1后缀
  • 只有当模块大版本升级到v2及以上时,才需要在module路径末尾追加对应大版本标识(比如/v2、/v3)

你当前打了v1.0.0的版本标签,但是go.mod里写的模块路径带了/v1后缀,二者不匹配就会触发这个错误。修改方式很简单:把go.mod里的模块路径改为module github.com/buphmin/test-go-pkg,重新推送代码并打v1.0.0标签即可正常拉取使用。

内容的提问来源于stack exchange,提问作者buphmin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 08:06:07