首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
beego
V2EX  ›  Go

VSCode & GoMod 体验不太好

  •  
  •   Vegetable · 143 天前 · 3110 次点击
    这是一个创建于 143 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近尝试使用 go Mod,发现有 gomod 的项目用 VSCode 打开之后,代码补全自动引入之类的功能都很奇怪
    补全变得很慢,比如输入 sql,如果用 gomod,直接就弹出 import 提示了,用了 gomod 就会很久或者干脆不提示. 使用 gopath 可以直接用 sql.这种方式呼出提示,现在需要我手动(可能是后台跑的太慢或者失败了)呼出,等个三五秒才行.

    感觉是 gocode-gomod.exe 这个工具跑的比较慢,不知道你们有没有遇到这种情况,都是怎么解决的

    10 回复  |  直到 2019-04-26 18:40:37 +08:00
        1
    shynome   143 天前   ♥ 1
    还有很多工具还不支持 gomod , 见 issue
    https://github.com/golang/go/issues/24661
        2
    kidlj   143 天前 via iPhone   ♥ 1
    嗯,是这样,这个扩展一堆 issues 没解决,就因为这个我最近的项目都用的 gopath mode。前几天 russ cox 发了一篇关于 go modules 的官方博文,列出了在 2019 年里 go modules 的支持和迁移计划,其中包括一项对众多 go tools 的改进。
        3
    wweir   143 天前   ♥ 1
    最近 vscode 搭配 bingo(lsp) 服用,感觉良好。因为是常驻服务,有 cache,跳转飞快
        4
    wweir   143 天前
        5
    Hellert   143 天前   ♥ 1
    也遇到了,启用 go.mod 后,CodeCompletion 非常慢。
    我是用最新 gocode.exe 改名替换 gocode-gomod.exe 解决的,目前使用中还没发现问题。
    godef-gomod.exe 后期版本会被废弃,因为 godef.exe 已经支持 gomod 了,也可以改名替换用最新的 godef.exe 。

    golang 1.11.* ,modules 这块估记还没定型,最近几个小版本变化比较大,很多插件和包估记在观望。比如那个语义化版本,如果包的版本是 v2 以上的,要在 go.mod 的 module 里加上版本号,比如 github.com/org/package/v3 这样,使用时 import 也要加上类似 v3 这样的版本。

    目前很多包不支持这个,如果包的版本已经到 v3,在启用 go.mod 的情况下,如果你直接 go get 就获取不到最新的版本,还得手动去提定最新版本号来 get。
        6
    gowk   143 天前
    建议用 JetBrains GoLand
        7
    Stevenv   143 天前 via Android
    建议用 idea 或者 goland
        8
    kungfuchicken   143 天前
    付费 Goland 真香警告
        9
    reus   138 天前
    过几个月就完善的了。go 的周边工具比起其他语言好得多,没什么必要用 goland 这种东西。
        10
    arbent   29 天前
    考虑下 gopls
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1563 人在线   最高记录 5043   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 20ms · UTC 16:57 · PVG 00:57 · LAX 09:57 · JFK 12:57
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1