@SbWereWolf
эникейщик

GoLand не видит модуль из импорта, как настроить?

Здравствуйте.

Открываю исходники легаси проекта, и GoLand не понимает импорты, при этом сам проект успешно работает на проде в контейнере, связь с автором потеряна, вы моя последняя надежда.

1) Если сделать go get "имя пакета" то пакет выкачивается в GOPATH (C:\Users\ktokt\go\pkg\mod\github.com\go-chi\chi@v1.5.4)
2) GoLand его эти исходники не видит и предлагает создать директорию ("Create Directory github.com at E:/Program Files/Go/src"),
3) Соответственно толку от IDE ноль (пример сообщения об ошибке : "Cannot resolve symbol 'github.com'").

61364eb57edc9495756749.jpeg

Думаю что проблема в настройках IDE, но что именно, ума не приложу. У JetBrains единственный рецепт увидел это сбросить кэш IDE и удалить директорию ".idea" в корне проекта.
Не помогает.

Включал "Index entrie GOPATH", не помогает.

Исходники на ГитХаб
set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\ktokt\AppData\Local\go-build
set GOENV=C:\Users\ktokt\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\ktokt\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\ktokt\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=E:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=E:\Program Files\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.17
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\ktokt\AppData\Local\Temp\go-build2159353923=/tmp/go-build -gno-record-gcc-switches
  • Вопрос задан
  • 5460 просмотров
Решения вопроса 1
udjin123
@udjin123
PHP, Golang, React
Так исходник без модулей (нет go.mod), а в последних версиях go по умолчанию включен новый способ скачивания пакетов. В проекте включите модули (go mod init ${имя пакета}) или установите переменную окружения GO111MODULE=off чтобы качалось по старому
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы