У меня есть проект, который должен иметь полностью собственную среду. Это значит:
- Компилятор языка Go и инструменты установлены внутри папки проекта (в подпапке
.deps\go
).
- Аналогично, проект имеет собственную папку GOPATH.
- Также в этом проекте используется подход Go-модулей.
Существует специальный файл build.cmd
, который устанавливает GOROOT и GOPATH соответственно и создает приложение. Этот cmd-файл работает нормально.
Но, когда я открываю проект в GoLand, он показывает много жалоб, таких как «Использование неэкспортированных типов», для всех встроенных типов, таких как string
, bool
, float64
и т. Д.
Это скриншот того, как это выглядит в GoLand
Когда я нажимаю Ctrl по имени типа, я получаю файл builtin.go
внутри пользовательского GOROOT, но он отображается с большим количеством ошибок «Недопустимый рекурсивный тип»:
builtin.go file">
Настройки GOROOT и GOPATH в диалоговом окне «Настройки» устанавливаются соответствующим образом (но на компьютере есть другая установка инструментов Go, если это имеет значение).
Вопрос в том, почему GoLand предъявляет эти жалобы и что я должен делать, чтобы их преодолеть?