您好,欢迎访问代理记账网站
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

Goland:Unresolved reference xx

Goland:Unresolved reference


1.环境

Goland版本:GoLand 2020.3.5

在这里插入图片描述
Go版本:1.16.4

EB@DESKTOP-K45IA6V MINGW64 ~/Desktop/test1280
$ go version
go version go1.16.4 windows/amd64

GoLand中选择的SDK版本:1.16.4

在这里插入图片描述

GoLand已经enable go modules integration:

在这里插入图片描述

GoLand的GOPATH设置如下:

在这里插入图片描述

项目的目录结构:

EB@DESKTOP-K45IA6V MINGW64 ~/Desktop/test1280
$ ls -l
total 2
-rw-r--r-- 1 EB 197609 25 May 26 14:24 go.mod
-rw-r--r-- 1 EB 197609  0 May 26 14:24 go.sum
-rw-r--r-- 1 EB 197609 66 May 26 15:28 main.go

项目的go.mod如下:

module test1280

go 1.16

项目的main.go内容:

package main

import "context"

func main() {

	context.TODO()

}

2.问题

在新建的一个项目中,使用context包,GoLand均可以正常resolved reference。

后来do something(未知),再次打开项目,GoLand不能解析识别context包等标准包,显示:

Unresolved reference xxx

在这里插入图片描述

并且,重建索引并重启GoLand也是无效的:

在这里插入图片描述

此时,虽然GoLand不能够resolved reference我的context包(符号),但可在终端(Terminal)正常的go run、go build。

在这里插入图片描述

因此,应该是我的GoLand某些配置发生了变化导致不能解析引用。

另外,当我切换GoLand的SDK到低版本Go 1.12.1时,可以正常resolved reference。

在这里插入图片描述

在这里插入图片描述


3.解决

重装GoLand:安装GoLand 2021.1.2版本。

直接安装GoLand 2021.1.2版本,安装向导会自动引导删除旧版本GoLand:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

安装完成后,重启reboot,然后重新打开项目,已可正常 resolved reference:

在这里插入图片描述


4.后记

只要重装GoLand即可,我从GoLand 2020.3.5升级到GoLand 2021.1.2版本,修复了此问题。

然后从GoLand 2021.1.2倒退回(重装)GoLand 2020.3.5版本,问题也已经不存在,可以正常解析。

可见,只需要重装GoLand即可解决问题。

目前,尚不清楚是我自身GoLand配置有问题,还是GoLand自身的一个BUG。

请了解的小伙伴也反馈给我呀!在此先谢过!


5.GoLand下载地址

GoLand 2020.3.5
https://download.jetbrains.com.cn/go/goland-2020.3.5.exe

GoLand 2021.1.2
https://download.jetbrains.com.cn/go/goland-2021.1.2.exe


分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进