以红色突出显示的有效方法 'Unresolved Reference'

Valid methods in being highlighted in red 'Unresolved Reference'

如何解决这个问题?该程序有效。但是 Gogland 中的方法以红色突出显示。添加了 Qt 5.8 版。

Gogland (1.0 Preview) 1.0 EAP
Build #GO-171.4694.61, built on June 27, 2017
Gogland EAP User
Expiration date: September 25, 2017
JRE: 1.8.0_112-release-736-b21 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.8.0-58-generic


batis@dev:~$ printenv | grep GO
GOROOT=/usr/lib/go-1.8/
GOPATH=/home/batis/gocode/

package main

import (
    "os"
    "github.com/therecipe/qt/widgets"
)

func main() {
    widgets.NewQApplication(len(os.Args), os.Args)

    //create a window
    window := widgets.NewQMainWindow(nil, 0)

    ......

    widgets.QApplication_Exec()
}

这些方法是在一个没有被 Gogland 索引的大生成文件中定义的。要更改限制,您应该更改 idea.max.intellisense.filesize.

为此,通过 Help | Edit Custom Properties 菜单打开自定义属性文件并添加如下内容:idea.max.intellisense.filesize=4500 限制为 4.5 MB。大小以千字节为单位。

请谨慎使用,索引大文件可能会显着影响索引更新速度。

运行 最近在 'bitbucket.org' GOPATH 中的项目没有在 'github.com' 中找到。检查“索引整个 GOPATH”框并修复它。

此选项位于:文件 > 设置(首选项)> 转到 > GOPATH

可能对原始上下文无效,但我发现的解决方法是重命名定义方法或其他标识符的文件,允许 Goland 重新索引,然后将其重命名回原始名称。

如果 go.mod 是从另一个项目复制而没有更新项目名称,也会发生这种情况:

// go.mod

module github.com/org/new-project

go 1.15

对我来说,是我的GOPATH设置为1.15,而GOROOT设置为1.14,所以你需要将它们设置为相同的版本。您可以在 Preferences -> Go -> GOROOT 或 GOPATH 中找到这些设置。

我使用 gvm - Go 版本管理器,这就是为什么我的系统中有多个 Go 版本。

我在使用 go SDK 1.13 的 Windows 10 上遇到了与 Goland 2021.1 相同的问题。我通过将最新的 go 版本 1.16.3 与我的项目所需的版本 1.13 并排安装来解决了这个问题。 事实证明,我的 Windows 10 OS 已使用不符合 GoLand 2021.1 和 SDK 1.13

的安全更新进行了修补

我遇到了同样的问题,这对我有用:

  1. 从主菜单,select文件 |使缓存无效。

  2. 在“使缓存无效”对话框中,您可以 select 在删除缓存文件时 IDE 将执行的其他操作:

  3. 清除文件系统缓存和本地历史记录

  4. 单击“无效并重新启动”。

对我来说,上述 none 个解决方案有效。最后我可以通过启用位于 Preferences > Go > Go Modules 下的“Enable Go Modules Integration”复选框来解决它。

您需要进入“文件”并选择“启用 Go 模块集成” 设置,然后“Go Modules”