我的 go mod 文件内容如下:
module ALFX2_REFACTOR go 1.12 require ( easybox v0.0.0+incompatible github.com/gogf/gf v1.9.7 github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4 // indirect github.com/araddon/dateparse v0.0.0-20190622164848-0fb0a474d195 github.com/emirpasic/gods v1.12.0 github.com/gizak/termui/v3 v3.1.0 github.com/gofrs/uuid v3.2.0+incompatible github.com/lib/pq v1.2.0 github.com/nats-io/nats-streaming-server v0.16.0 // indirect github.com/nats-io/stan.go v0.5.0 github.com/tidwall/gjson v1.3.2 // indirect github.com/tidwall/sjson v1.0.4 github.com/valyala/fasttemplate v1.0.1 gopkg.in/alecthomas/kingpin.v2 v2.2.6 gopkg.in/yaml.v3 v3.0.0-20190709130402-674ba3eaed22 ) replace easybox => /Users/praynise/devenv/go/easybox
执行 go mod download 提示如下:
go: finding github.com/gogf/gf v0.0.0+incompatible go: github.com/gogf/[email protected]+incompatible: unknown revision v0.0.0 go: error loading module requirements
可是我的 go.mod 文件里面根本就没有这个 github.com/gogf/gf v0.0.0+incompatible 啊… 之前开发项目的时候我有自己拉了一个 github.com/gogf/gf 并通过 replace 的方式指向本地,现在 git 上的版本更新了,我想直接用 git 上的,就直接改配置 require 为 github.com/gogf/gf v1.9.7,但是通过 go mod download 仍然去找 v0.0.0,请大神指点这个情况肿么办…
![]() | 1 thet 2019-10-11 14:59:29 +08:00 go mod tidy 试试呢 |
2 ppphp 2019-10-11 15:02:54 +08:00 怀疑是 easybox 有问题,其他的复制到我本地是没问题的 |
3 heavyrainn OP @ppphp easybox 是我自己写的一个本地包,所以用 replace 替换到本地了 |
4 heavyrainn OP @thet go mod tidy 也会去找那个 v0.0.0… |
![]() | 5 thet 2019-10-11 15:30:51 +08:00 go mod why github.com/gogf/gf 看看哪里引用了,是不是 easybox 里面有引用 |
![]() | 6 reus 2019-10-11 15:48:07 +08:00 用 go mod graph 看看是怎么引入的 另外,gogf 是垃圾。 |
![]() | 7 qq976739120 2019-10-11 15:52:12 +08:00 @reus gogf 是垃圾 此话怎讲?我给 gf 提供过代码,接触下来,群主和开发者都是认真负责的 coder,版本迭代很快,更新的功能也很实用,怎么就成垃圾了 |
![]() | 8 reus 2019-10-11 15:59:28 +08:00 @qq976739120 认真负责并不代表水平足够,例如这段代码就有严重 bug: https://github.com/gogf/gf/blob/977c8b7ee32f7f4891cafed5d3255bc7bd20b3c5/crypto/gmd5/gmd5.go#L40 |
9 heavyrainn OP @thet easybox 里面的确是有,我 replace 了,但是还是报了这个错误。看来还是我对 go mod 的理解有问题,非常感谢啦 |
10 heavyrainn OP @reus 感谢提供知识点~gogf 我追了很长时间了,可能我不是什么太严谨的程序员吧,gogf 的各种模块给我提供了很大的便利。bug 当然是有,不过可以给作者提 issue 帮助其改进,作者回 issue 的速度感觉还是挺快的。有你感觉不妥的地方,也希望你可以帮助其变得更好(*^^*) |
![]() | 12 index90 2019-10-11 18:42:13 +08:00 go mod graph| grep github.com/gogf/gf |
13 icexin 2019-10-11 19:13:33 +08:00 ![]() @scukmh defer 里面的 err 会把 return 的 err 给覆盖了,io.Copy 即使出错也发现不了。 |
![]() | 15 johng 2019-10-12 09:37:05 +08:00 @heavyrainn 你看看 easybox 里面引用的 gf 是什么版本?另外 replace 只对本地项目有效,不会影响依赖项目。 |
16 heavyrainn OP @johng easybox 之前也引用的本地版,现在都改成 1.9.7 版了,顺便仍 github 上去了,省着以后总本地手动同步了… |