用 go 的大家, gopls 有办法不开代理来用吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
linhongye
V2EX    Go 编程语言

用 go 的大家, gopls 有办法不开代理来用吗?

  •  
  •   linhongye 2019-09-21 02:34:02 +08:00 9263 次点击
    这是一个创建于 2270 天前的主题,其中的信息可能已经有所发展或是发生改变。

    今天更新了一下 gopls 一下子悲剧了, 就不工作了
    然后翻出去以后一下子就正常了
    翻回来又继续不正常...
    看起来 gopls 是要在线工作的, 而且连接的服务器是不行的...
    我尝试搜索了一下, 好像没有讨论这个问题的?
    不是说中国用 go 的人数全世界最多吗?.. 有同样问题的吗?

    19 条回复    2019-09-25 02:37:53 +08:00
    wweir
        1
    wweir  
       2019-09-21 05:29:02 +08:00 via Android
    请升级 go 至 1.13 ,并配置 GOPROXY
    之后,就可以感受前所未有的霜
    keyv
        2
    keyv  
       2019-09-21 06:37:33 +08:00 via iPhone
    可能是后台检索需要从网络上拉东西吧。
    madNeal
        3
    madNeal  
       2019-09-21 08:57:51 +08:00
    为什么配置了 goproxy 最近也拉不下代码呢 @wweir
    wweir
        4
    wweir  
       2019-09-21 09:03:09 +08:00 via Android
    @madNeal 请说出你的场景、做法
    madNeal
        5
    madNeal  
       2019-09-21 09:10:56 +08:00
    @wweir go get github.com/grafana/grafana

    gproxy 配置的是 https://goproxy.cn, direct

    go1.13
    missdeer
        6
    missdeer  
       2019-09-21 09:29:41 +08:00
    你的 gopls 是官方的还是第三方的?
    wweir
        7
    wweir  
       2019-09-21 09:37:48 +08:00 via Android
    @madNeal 没理解错的话,直接 go get 并不走 goproxy。
    goproxy 是用来下依赖库的,而不是下载指定 git repo。

    可以通过 goproxy 下载的东西是指定包的指定版本的压缩包,以及指定包的 meta 信息。
    用人话说就是只能下载 依赖库的 go 源码问题,并不包括 .git 目录及其它多数源码无关文件。

    而之前的 go get 的作用是下载指定包的整个 git
    wweir
        8
    wweir  
       2019-09-21 09:49:52 +08:00 via Android
    @wweir 接上条

    之前的 go get 的作用是下载指定包的整个 git 仓库到 gopath 中的指定位置,为了向前兼容,自然就没法用 goproxy 了。

    ps: 在使用 go modules 管理的 git 仓库中,go get 的作用被重新定义为:为该仓库添加指定的依赖。这样就可能正常用到 goproxy 了。

    pps: 如果你是想通过 goproxy 安装指定包编译后的二进制文件,eg:安装 gopls、grafana,可以
    wweir
        9
    wweir  
       2019-09-21 09:51:39 +08:00 via Android   1
    @wweir 再接
    pps: 如果你是想通过 goproxy 安装指定包编译后的二进制文件,eg:安装 gopls、grafana,可以使用我的这个辅助脚本,体验同样前所未有的爽
    https://gist.github.com/wweir/78ea25df5f0d9b6a9e2acc7ab031efee
    codehz
        10
    codehz  
       2019-09-21 10:43:03 +08:00 via Android
    @wweir 那个,其实如果指定 GO111MOUDLE=on 并且显式指定 GOPATH 到特定目录,然后在非项目目录使用 go get 还是会用到 goproxy 的,然后也能正确安装到 gopath 里
    另外 GO 1.14 据说要默认 go module 了
    linhongye
        11
    linhongye  
    OP
       2019-09-21 14:12:03 +08:00
    @wweir #1
    你说的是安装的时候很爽吗?...
    我这边 gopls 不开代理是完全不工作啊.
    代码自动补全, 提示, 等等全没有啊...
    wweir
        12
    wweir  
       2019-09-21 15:48:37 +08:00 via Android
    @linhongye 本地缺包而已,gopls 会自动下载缺的包
    dodo2012
        13
    dodo2012  
       2019-09-21 16:17:50 +08:00
    自从用上 gopls,就没爽过
    kidlj
        14
    kidlj  
       2019-09-21 16:20:23 +08:00 via iPhone
    scnace
        15
    scnace  
       2019-09-21 17:23:06 +08:00 via Android
    @linhongye 你的使用场景是什么?本地项目里面有没有用到 go module ? GO111MODULE 设置的是什么?有没有设置 GOPATH ?有没有打开 gopls 的 log 看过? ---- 来自一位 1.13 以前经常在带 mod 和不带 mod 项目之间疯狂切换的码农的灵魂拷问
    scnace
        16
    scnace  
       2019-09-21 17:27:34 +08:00 via Android
    看了楼上的 issue 看来不是 gopls 的问题 是 vscode 的问题 ( vscode 出问题不是很正常吗.jpg
    linhongye
        17
    linhongye  
    OP
       2019-09-21 19:27:24 +08:00
    @scnace #15
    用的 vscode, 用 go mod, 设置 ON, 有 GOPATH, 没看过 log..
    crazyvv
        18
    crazyvv  
       2019-09-23 17:05:21 +08:00
    gopls 内存占用是越来越狠。。不得不定时的重启一把 vscode
    lxml
        19
    lxml  
       2019-09-25 02:37:53 +08:00
    gopls 真的很糟糕 而且开发团队看起来人也挺少的 要不说我都以为这是一个个人业务项目


    包加载非常慢
    补全也慢
    然后改包名不能识别,还得手动重启 vscode
    重命名只能在包作用域

    ……

    坑太多了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5126 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 01:23 PVG 09:23 LAX 17:23 JFK 20:23
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86