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

Go模块伪版本时间戳不匹配报错求助:xorm依赖问题

Go模块伪版本号不匹配问题解决

问题描述

执行go run .时触发如下错误:

go: github.com/go-xorm/xorm@v0.7.0 requires
github.com/go-xorm/core@v0.0.0-20180322150003-0177c08cee88: invalid pseudo-version: does not match version-control timestamp (2018-03-22T14:29:44Z)

当前go.mod内容:

module github.com/lonng/nanoserver

go 1.14

replace (
    golang.org/x/crypto => github.com/golang/crypto v0.0.0-20181001203147-e3636079e1a4
    golang.org/x/net => github.com/golang/net v0.0.0-20180926154720-4dfa2610cdf3
    golang.org/x/sys => github.com/golang/sys v0.0.0-20180928133829-e4b3c5e90611
    golang.org/x/text => github.com/golang/text v0.3.0
)

require (
    github.com/chanxuehong/rand v0.0.0-20180830053958-4b3aff17f488 // indirect
    github.com/go-sql-driver/mysql v1.4.0
    github.com/go-xorm/core v0.6.0
    github.com/go-xorm/xorm v0.7.0
    github.com/gorilla/mux v1.6.2
    github.com/lonng/nano v0.4.1-0.20190704005402-15209d995681
    github.com/lonng/nex v1.4.1
    github.com/pborman/uuid v1.2.0
    github.com/pkg/errors v0.8.0
    github.com/sirupsen/logrus v1.1.0
    github.com/spf13/viper v1.2.1
    github.com/urfave/cli v1.20.1-0.20190203184040-693af58b4d51
    github.com/xxtea/xxtea-go v0.0.0-20170828040851-35c4b17eecf6
    golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529
    golang.org/x/net v0.0.0-20190509222800-a4d6f7feada5
    golang.org/x/text v0.3.2
    gopkg.in/chanxuehong/wechat.v2 v2.0.0-20180924084534-7e0579cb5377
)

环境:Go版本go1.14.14 windows/amd64,曾尝试修改github.com/go-xorm/xorm版本为伪版本但未解决问题。

解决方案

1. 修正core模块的伪版本号

伪版本号的时间戳必须与Git提交的实际时间戳完全匹配。报错显示core模块提交0177c08cee88的实际时间是2018-03-22T14:29:44Z,所以需要替换为正确的伪版本:

  • 直接修改go.mod中require块的github.com/go-xorm/core版本为:
    github.com/go-xorm/core v0.0.0-20180322142944-0177c08cee88
    
  • 或者执行命令自动更新:
    go get github.com/go-xorm/core@v0.0.0-20180322142944-0177c08cee88
    

2. 清理缓存并同步依赖

执行以下命令清除本地模块缓存,让Go重新拉取正确版本的依赖:

go clean -modcache
go mod tidy

go mod tidy会自动整理依赖,移除无用模块并确保所有依赖版本匹配。

3. 升级xorm到兼容稳定版

如果v0.7.0版本存在依赖缺陷,可以尝试升级到更高的兼容版本(比如v0.8.0,需确认代码兼容性):

go get github.com/go-xorm/xorm@v0.8.0
go mod tidy

4. 关于忽略时间戳

Go模块机制不支持忽略伪版本的时间戳校验,时间戳是伪版本号的核心组成部分,用于保证依赖的唯一性和正确性,必须使用匹配的时间戳才能通过校验。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 05:17:30