Допустимые методы, выделенные красным цветом "Неразрешенная ссылка"
Как решить эту проблему? Программа работает. Но методы в Гогланде выделены красным. Добавлена версия 5.8 Qt.
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()
}
9 ответов
Методы определены в большом сгенерированном файле, который не индексируется Gogland. Чтобы изменить лимит, вы должны изменить idea.max.intellisense.filesize
,
Для этого откройте файл пользовательских свойств через Help | Edit Custom Properties
меню и добавьте что-то вроде этого: idea.max.intellisense.filesize=4500
для предела 4,5 МБ. Размер в килобайтах.
Пожалуйста, используйте осторожно, индексирование больших файлов может существенно повлиять на скорость обновления индекса.
Недавно столкнулся с этим проектом GOPATH на bitbucket.org, который не нашел на github.com. Поставил галочку в поле "Index all GOPATH" и исправил его.
Возможно, это недопустимо для исходного контекста, но я обнаружил обходной путь: переименовать файл, в котором определен метод или другой идентификатор, разрешить Goland переиндексировать, а затем переименовать его обратно в исходное имя.
Для меня ни одно из вышеперечисленных решений не сработало. Наконец, я смог решить эту проблему, включив флажок «Включить интеграцию модулей Go», расположенный в разделе «Настройки»> «Перейти»> «Модули Go».
У меня была такая же проблема, и это сработало для меня:
В главном меню выберите Файл | Сделать недействительными кеши.
В диалоговом окне Invalidate Caches вы можете выбрать дополнительные действия, которые IDE будет выполнять при удалении файлов кеша:
Очистить кеш файловой системы и локальную историю
Нажмите "Недействительно и перезапустите".
Это также может произойти, если
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 Version Manager, поэтому в моей системе несколько версий Go.
У меня была такая же проблема с Goland 2021.1 в Windows 10 с go SDK 1.13. Я решил проблему, установив последнюю версию go 1.16.3 рядом с версией 1.13, которая мне нужна для моих проектов. Оказалось, что моя ОС Windows 10 была исправлена обновлениями безопасности, несовместимыми с GoLand 2021.1 и SDK 1.13.