• 请不要在回答技术问题时复制粘贴 AI 生成的内容
yyh325
0.01D
V2EX  ›  程序员

吐槽一下用 vscode 写 golang

  •  
  •   yyh325 · Jan 5, 2021 · 8861 views
    This topic created in 2131 days ago, the information mentioned may be changed or developed.

    装了 go 插件,还有各种编译调试代码提示插件. 各种问题,一会儿没代码提示了; 修改环境变量生效要重启电脑;windows 上交叉编译完 linux 版本的程序, 下次再编译就不是 linux 版本的了. 还是 goland 好,一步到位

    35 replies  •  2021-03-27 12:04:25 +08:00
    janxin
    janxin
    Jan 5, 2021
    1
    你可能不是很熟悉 Windows,修改环境变量只需要重启程序不需要重启电脑,甚至不需要重启程序...

    记得使用 gopls,不要使用其他工具
    sky96111
    sky96111
    Jan 5, 2021 via Android
    2
    我这边代码提示确实不稳定,总是掉…但是其他的问题很明显是你的问题。修改环境变量只需要重启应用就可以了。交叉编译 linux 只修改了你当前终端的环境变量,关闭后就失效了,再编译当然就会回到 Windows
    codehz
    codehz
    Jan 5, 2021
    3
    ( explorer 会自动响应修改全局环境变量的请求,然后新开的进程就能用上了)
    yyh325
    yyh325
    OP
    Jan 5, 2021
    4
    终端配置的是 powshell, 应该是从 windows 的环境变量里取的 GOARCH, GOOS. 比如修改 GOOS 后, 重启 vscode, 确定还是之前配置的 GOOS, 重启电脑才能获取正确的 GOOS. 刚又试了一次. 求解, 你们是这样吗
    ii55dd
    ii55dd
    Jan 5, 2021 via iPhone
    5
    go 的交叉编译已经够方便了,你说的是啥场景,代码提示 goland 弱智,每次新项目加载 go list,代理吃不消
    clemente0620
    clemente0620
    Jan 5, 2021
    6
    为什么不用 wsl2
    qianlifeng
    qianlifeng
    Jan 5, 2021
    7
    vscode 最让我不能忍的是不支持鼠标快捷键,所以我现在还在用 GOLAND
    back0893
    back0893
    Jan 5, 2021
    8
    emm
    为啥不在 shell 里面手动
    eclipselu
    eclipselu
    Jan 5, 2021❤️1
    9
    那个 golang 的插件确实不太稳定 有一些 lint 的错误我代码改了它还是提示的是老的错误
    mason961125
    mason961125
    Jan 5, 2021
    10
    > 还有各种编译调试代码提示插件

    难道 vscode-go 的功能不够用?你不考虑这么多插件会冲突?我用了假的 vscode ?
    snxq1995
    snxq1995
    Jan 5, 2021 via Android❤️2
    11
    mac 和 linux 没有楼主描述的问题。
    所以你懂我意思吧/笑:-D
    40EaE5uJO3Xt1VVa
    40EaE5uJO3Xt1VVa
    Jan 5, 2021
    12
    昨天遇到一个 vscode 写 go 的问题,装了 go 插件之后,ctrl s 自动删掉 import,然后运行还报错,报错说没有包,不认 fmt,我满头大汗
    Claar
    Claar
    Jan 5, 2021 via iPhone
    13
    我反正很喜欢用 goland
    Adriel
    Adriel
    Jan 5, 2021
    14
    你想想 你在网页上敲代码是什么体验?
    lithbitren
    lithbitren
    Jan 6, 2021
    15
    package main 那里一直有波浪线,虽然不影响编译运行,但实在不太舒服,查了好些个方法都没有解决
    zro
    zro
    Jan 6, 2021❤️1
    16
    刚看完一些教学视频,不知道像我这种编程白痴学不学得来~~
    fpure
    fpure
    Jan 6, 2021 via Android
    17
    @airplayxcom 有人喜欢在浏览器里敲代码,有人喜欢在终端里敲代码,半斤八两
    46fo
    46fo
    Jan 6, 2021
    18
    LiteIDE
    yzbythesea
    yzbythesea
    Jan 6, 2021
    19
    说实话讲轻量化,用 text editor 就上 vim,讲功能效率,用 IDE 就一步到位上 jetbrain 全家桶。vscode 不上不下。
    hahaFck
    hahaFck
    Jan 6, 2021
    20
    js 做的东西能好到哪
    rrfeng
    rrfeng
    Jan 6, 2021 via Android
    21
    开 gopls 流畅的一逼…你肯定是没弄好。
    to2false
    to2false
    Jan 6, 2021
    22
    除了 debug 难用了点,其他问题不大
    llej
    llej
    Jan 6, 2021
    23
    我使用如下这样的脚本来进行编译,没有遇到什么问题
    ```bat
    SET CGO_ENABLED=0
    SET GOOS=darwin
    SET GOARCH=amd64
    go build -o mac_md2website ./src

    SET CGO_ENABLED=0
    SET GOOS=linux
    SET GOARCH=amd64
    go build -o linux_md2website ./src

    SET CGO_ENABLED=0
    SET GOOS=windows
    SET GOARCH=amd64
    go build -o windows_md2website.exe ./src
    ```
    monospace
    monospace
    Jan 6, 2021
    24
    不要慌,问题不大,习惯就好 😄
    zzzzzzggggggg
    zzzzzzggggggg
    Jan 6, 2021
    25
    一般这种工具类的吐槽都是习惯问题,过一阵就好了
    wiluxy
    wiluxy
    Jan 6, 2021
    26
    装了 go 插件后,打开 vscode,搜索 go.uselanguageserver,勾上再看看,速度快很多的
    MarkingJason
    MarkingJason
    Jan 6, 2021❤️1
    27
    vscode 有 remote - ssh,可以远程开发 linux 机器上的项目。
    或者用 win10 的 wsl2,唯一缺点就是 wsl2 没有固定的内网 ip,得用脚本固定。
    至于编译的话没用过,都是在终端上编译的。
    格式化、自动导包啥的打开 gopls 就行。
    holulu
    holulu
    Jan 6, 2021
    28
    vscode 免费,goland 收费,体验有差是正常的吧?!
    cheng6563
    cheng6563
    Jan 6, 2021
    29
    vscode 的代码提示是不准确的,不适合开发这类静态语言。
    js,python 什么的反正没有 IDE 能准确提示,用 vscode 无所谓了。
    xpresslink
    xpresslink
    Jan 6, 2021
    30
    还是推荐用够烂的
    janxin
    janxin
    Jan 6, 2021
    31
    @lithbitren 因为包没有写文档
    lithbitren
    lithbitren
    Jan 6, 2021
    32
    @janxin 啊,不懂啊,我 package 和每个函数前面都按规范写注释了。。

    红色波浪线报错理由如下:
    gopls requires a module at the root of your workspace.
    You can work with multiple modules by opening each one as a workspace folder.
    Improvements to this workflow will be coming soon ( https://github.com/golang/go/issues/32394),
    and you can learn more here: https://github.com/golang/go/issues/36899.

    但进了这两个 issues 我也整不明白怎么设置 vscode 能解决这个问题,因为不影响运行就搁置了
    DelayNoMay
    DelayNoMay
    Jan 6, 2021
    33
    免费的肯定是最贵的
    march1993
    march1993
    Jan 6, 2021
    34
    环境变量直接在 vscode 自己的 setting 里设置也行的
    putaozhenhaochi
    putaozhenhaochi
    Mar 27, 2021
    35
    @lithbitren https://github.com/golang/tools/blob/master/gopls/doc/workspace.md

    如果不是根目录,需要讲文件夹加入工作区
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2140 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 156ms · UTC 02:58 · PVG 10:58 · LAX 18:58 · JFK 21:58
    ♥ Do have faith in what you're doing.