Windows中vscode安装golang插件问题解决

在Windows中,编译器默认安装C:\Program Files\Go

配置用户环境变量

添加用户变量

GOPATH变量设置用户工作目录。如果写代码时要用到第三方库,然后使用go get xxx时,xxx就下载到这个目录。

变量 GOPATH        值 C:\Program Files\Go\bin

GOROOT变量设置Go编译器的安装位置

变量 GOROOT        值 C:\Program Files\Go

配置go的环境变量

在命令行下使用go env命令可以看到所有关于go的环境变量。

由于go是google的产品,许多插件都是在国外,然而国内访问不了,所以要设置代理等配置

go env -w GOPROXY=https://goproxy.io,direct
go env -w GOPRIVATE=*.corp.example.com
go env -w GO111MODULE=on

安装第三方库

在命令行下使用go get -u xxx就可以安装第三方库了

go get -u gorm.io\gorm

使用上面的命令之后就可以在C:\Program Files\Go\bin\pkg\mod目录下发现有个gorm.io的文件夹,下面有gorm文件夹

vscode解决插件安装问题

在vscode中安装了go这个插件的时候,这个插件下面还有很多小插件,这些小插件都是通过go的安装方式安装(也就是上面安装第三方库的方式),然而遇到了很多问题,如下面这个例子。

Installing golang.org/x/tools/gopls@v0.6.9 FAILED

{

“killed”: false,

“code”: 1,

“signal”: null,

“cmd”: “C:\Program Files\Go\bin\go.exe get -v golang.org/x/tools/gopls@v0.6.9”,

“stdout”: “”,

“stderr”: “go: writing stat cache: mkdir C:\Program Files\Go\bin\pkg\mod\cache\download\golang.org\x\tools\gopls: Access is denied.\ngo: downloading golang.org/x/tools/gopls v0.6.9\ngo get golang.org/x/tools/gopls@v0.6.9: mkdir C:\Program Files\Go\bin\pkg\mod\cache\download\golang.org\x\tools\gopls: Access is denied.\n”

}

1 tools failed to install.

Files\Go\bin\pkg\mod\cache\download\github.com\uudashr\gopkgs\v2@v\v2.1.2.lock: Access is denied.

这是因为我们默认安装go的位置为C:\Program Files\Go\,这个文件夹要管理员权限才能访问,解决方法:

  1. Windows左下角的搜索框搜索cmd
  2. 然后右键,使用管理员身份运行
  3. 然后go get golang.org/x/tools/gopls@v0.6.9,上面哪个安装失败就安装哪个
  4. 然后重启vscode,在vscode右下角有提示安装插件,点击install即可

导包失败问题

我们安装的第三方库都是在C:\Program Files\Go\bin\pkg\mod下面,而我们的写代码的工作区却不是在GOPATH下面,而在我们的工作区和GOROOT/src目录(标准库)下面都没有这个第三方库,所以报错,解决方案:

  1. 假设我们使用命令go get -u gorm.io\gorm安装了这个第三方库

  2. 假设你写的代码中已经正确导入第三方库,只是系统没有识别到

  3. 然后在vscode的工作区使用快捷键**ctrl+shift+`**打开终端,然后在里面使用命令

# 工作区取个包名,名字任意
go mod init gorm_learn
  1. 把项目依赖的第三方库都拷贝到工作区,该命令需要管理员权限,所以要在管理员权限下运行,且在cmd中打开工作区的目录

    go mod vendor
    

乱码问题

有时运行程序输出乱码,因为Windows安装简体中文版就代表使用了GBK编码,而代码一般只用UTF-8编码,解决方案:

命令chcp可以查看编码,GBK为936,UTF-8为65001,

修改编码可以直接在命令后面添加编码代表的数字,在vscode的终端中使用命令

chcp 65001

然后在终端中运行程序即可,但这只是暂时的,下次打开终端还要输入这个命令才行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值