Неправильный путь при отладке проекта в VS Code

Изо дня в день я не могу отладить проект, где раньше все работало идеально. Я уверен, что ничего не менял в проекте или его настройках за это время. Я всего лишь работал над другим проектом в той же IDE (VS Code).

Фактическая ошибка в VS Code:

dbInteraction.go:8:2: cannot find package "github.com/go-sql-driver/mysql" in any of:
C:\Go\src\github.com\go-sql-driver\mysql (from $GOROOT)
c:\Users\Mani\Documents\Programmier Projekte\PRJCTNAME\src\github.com\go-sql-driver\mysql (from $GOPATH)
main.go:8:2: cannot find package "github.com/gorilla/mux" in any of:
C:\Go\src\github.com\gorilla\mux (from $GOROOT)
c:\Users\Mani\Documents\Programmier Projekte\PRJCTNAME\src\github.com\gorilla\mux (from $GOPATH)
exit status 1
Process exiting with code: 1

Проверяем переменные окружения:

C:\Users\Mani>echo %GOPATH%
C:\Users\Mani\go

C:\Users\Mani>echo %GOROOT%
C:\Go\

Как видите, мои переменные окружения установлены по желанию, и $GOPATH в выходных данных отладки не соответствует этому пути; в контракте это фактический путь к моим источникам для этого проекта.

Когда я создаю проект через командную строку с go build (в каталоге проекта), он работает отлично. Это дает мне подозрение, что проблема связана с VS Code.

Параметры пользователя и параметры рабочей области в VS Code пусты. Также пустым является специфичный для проекта VS-Code settings.go, а launch.go не изменился по сравнению со значением по умолчанию.

EDIT 1: Если я правильно помню, я думаю, что переключился с VS Code 32bit на VS Code 64bit между ними.

РЕДАКТИРОВАТЬ 2: после установки параметра env в файле launch.json я снова могу отлаживать программу, но теперь я не получаю никакого вывода в консоли отладки.


person Martin Niederl    schedule 15.09.2017    source источник


Ответы (1)


Если вы используете расширение vscode-go, попробуйте изменить параметр go.gopath, как описано в вики Microsoft vscode-go :

Параметр go.gopath в настройках пользователя переопределяет GOPATH, полученный из приведенной выше логики. Параметр go.gopath в настройках рабочей области имеет приоритет над параметром в настройках пользователя. В этом параметре вы можете указать несколько папок как GOPATH. Обратите внимание, что они должны быть разделены ; в Windows и : в противном случае.

Сначала у меня были проблемы с распознаванием кода Visual Studio моего gopath, и это исправило это.

person fanduin    schedule 15.09.2017
comment
уже следовал всему в этом списке раньше без каких-либо изменений, поэтому я переделал эти настройки - person Martin Niederl; 15.09.2017
comment
Вы используете отладчик dlv? - person fanduin; 16.09.2017
comment
Приношу свои извинения, большое спасибо за совет. Я обязательно буду иметь это в виду в будущем! - person fanduin; 16.09.2017
comment
@fanduin Если вы имеете в виду отладчик Delve, то да, я его использую - person Martin Niederl; 16.09.2017