GO语言入门 - 开发环境搭建之vs-code

从官网下载压缩版vscode: https://code.visualstudio.com/Download

先安装go-sdk,设置阿里云作为下载go依赖库的代理(避免被墙导致有些依赖无法下载):
go env -w GOPROXY=http://mirrors.aliyun.com/goproxy/

解压缩版vscode的zip文件,然后在Code.exe同级目录下创建data目录,这样插件即可默认安装到./data/extensions目录下,用户数据保存在到./data/user-data目录下
若删除data目录下所有文件和目录,则相当于还原为绿色版最开始版本

安装go插件
vscode搜索go插件,第一个插件就是vscode-go,对应官网:https://github.com/golang/vscode-go

集成go-sdk和vscode
通过如图所属齿轮按钮进入GO插件设置界面,或直接打开./data/user-data/User/settings.json

添加如下配置:

添加如下配置:
{
    "go.alternateTools": {},
    "go.buildOnSave": "workspace",
    "go.lintOnSave": "package",
    "go.vetOnSave": "package",
    "go.buildTags": "",
    "go.buildFlags": [],
    "go.lintFlags": [],
    "go.vetFlags": [],
    "go.coverOnSave": false,
    "go.useCodeSnippetsOnFunctionSuggest": false,
    "go.formatTool": "goreturns",
    "go.goroot": "D:\\Go",
    "go.gopath": "C:\\Users\\Administrator\\go", 
    "go.toolsGopath":"D:\\Go\\vscode\\data\\code\\",
    "go.gocodeAutoBuild": false,
    "go.autocompleteUnimportedPackages": true,
    "go.gocodePackageLookupMode": "go",
    "go.gotoSymbol.includeImports": true,
    "go.inferGopath": true,
    "go.useCodeSnippetsOnFunctionSuggestWithoutType": true
}

在./data目录新建code目录作为go工程目录,此路径作为GOPATH路径, 再在code文件夹下建pkg和bin目录,pkg存放当前项目依赖包,bin存放当前项目编译好的可执行文件

在code文件夹下建testProject工程目录,vscode终端进入testProject目录, 执行: go mod init com.yussion.test/hello,不然打开test.go会提示go: cannot find main module; see 'go help modules'
在testProject工程目录新建test.go程序
package main
import "fmt"
func main() {
    fmt.Printf("Hello word")
}
保存时vscode右下角提示需要安装go开发工具,先设置代理,不然被墙会导致安装go开发工具失败
go env -w GO111MODULE=on    #模块支持,使用模块时,GOPATH是无意义的,不过它还是会把下载的依赖存在$GOPATH/src/mod中,也会把go install结果放在$GOPATH/bin中
go env -w GOPROXY=https://goproxy.io,direct   #下载开发工具或依赖库的代理网站
重新打开Vscode -> 打开test.go文件,按vscode右下角提示需要安装go开发工具,点击install all即可将所有开发工具安装成功
开发工具将会安装到"go.toolsGopath":"D:\\Go\\vscode\\data\\code\\"指定的路径下。

若发现打开test.go源码,package main显示错误,并提示$GOPATH/go.mod exists but should not
原因是开启模块支持后,不能与GOPATH共存,所以GOPATH不要指定为项目目录,settings.json可指定为系统默认的GOPATH:C:\Users\Administrator\go

搜索并安装code runner插件,重启vscode后发现右上角出现三角形图标,点击即可运行go程序

安装调试工具:
go get -u github.com/go-delve/delve/cmd/dlv
ctrl+shift+p 输入 Debug: Open launch.json 打开 launch.json 文件,如果第一次打开,会新建一个配置文件,修改内容见如下截图

点击左侧Debug按钮即可执行本地调试

附最后测试工程目录结构:

 

=================================================================================

用vscode的自动代码提示,发现太慢了,隔3,4秒才会出提示,所以换为Google推荐的 gopls来代替。

Go1.14版本之后,都推荐使用go mod模式来管理依赖环境了,也不再强制我们把代码必须写在GOPATH下面的src目录了,你可以在你电脑的任意位置编写go代码。(网上有些教程适用于1.11版本之前。)
默认GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct,由于国内访问不到https://proxy.golang.org,所以我们需要换一个PROXY,这里推荐使用https://goproxy.io或https://goproxy.cn。
可以执行下面的命令修改GOPROXY:go env -w GOPROXY=https://goproxy.cn,direct

打开 VS Code 的setting, 搜索 go.useLanguageServe, 并勾选,然后会提示install,点击install安装即可。如果安装失败,则检查前面代理设置是否生效。

然后在setting.json配置文件末尾追加如下配置即可实现代码提示
   "go.useLanguageServer": true,
    "[go]": {
        "editor.snippetSuggestions": "none",
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
            "source.organizeImports": true,
        }
    },
    "gopls": {
        "usePlaceholders": true, 
        "completeUnimported": true,
        "deepCompletion": true,
    },
    "files.eol": "\n",

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值