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

Использование go go1.10.2 darwin / amd64 вместе с glide 0.13.1. Зависимости находятся в каталоге поставщика. Ошибка построения из командной строки отсутствует. При просмотре кода в VS Code отображается следующая ошибка:

Не удается найти пакет "github.com/xxx/go-utility/log" ни в одном из:

/usr/local/Cellar/go/1.10.2/libexec/src/github.com/xxx/go-utility/log (из $ GOROOT) /Users/martin/go/src/github.com/xxx/go- утилита / журнал (из $ GOPATH)

И терминал, и консоль VS сообщают GOPATH = "/ Users / martin / go"

Я ожидаю, что смогу убрать сообщение, если сделаю команду go get, но это лишает смысла каталог vendor.

Это новая установка на новый компьютер.

Какую конфигурацию я забыл?


person Martin Flower    schedule 21.05.2018    source источник
comment
Где находится код вашего проекта и каталог поставщиков?   -  person JimB    schedule 21.05.2018
comment
На первый взгляд это выглядит правильно, вы уверены, что на этом пути нет символических ссылок? (вы можете быстро проверить из каталога проекта с помощью pwd -P, который должен точно соответствовать указанным выше путям)?   -  person JimB    schedule 21.05.2018
comment
да, в пути есть символические ссылки   -  person Martin Flower    schedule 21.05.2018
comment
В вашем GOPATH не может быть символических ссылок. Кажется, что Go определяет местоположение пакета, видит, что его нет в рабочей области, поэтому не ищет каталог поставщика.   -  person JimB    schedule 21.05.2018
comment
Я только что удалил символическую ссылку и скопировал все файлы, поэтому пути к каталогам теперь не содержат символических ссылок. Сборки проекта продолжают успешно строиться из командной строки. Visual Studio Code продолжает сообщать о той же проблеме.   -  person Martin Flower    schedule 21.05.2018
comment
Правильно ли он строится, когда вы используете имя пакета, например go build xxxdc.visualstudio.com/enlightcentre/reports/backend? Я не уверен, что изменилось в вашей настройке VSC, но отсутствие проверки пути поставщика означает, что он не видит, что каталог пакета правильно расположен в GOPATH.   -  person JimB    schedule 21.05.2018
comment
pwd /Users/martin/go/src/xxxdc.visualstudio.com/enlightcentre/reports/backend/cmd/compliance/getnoncompliantassets   -  person Martin Flower    schedule 21.05.2018
comment
Я отмечаю, что в Visual Studio Code каталог vendor немного темнее, что говорит о том, что его, возможно, не следует рассматривать так же, как другие исходные каталоги. Я ожидаю, что это ожидаемое поведение.   -  person Martin Flower    schedule 21.05.2018
comment
Как VSC выделяет каталог, может быть из любого плагина, например git изменил этот путь. Я не использую VSC, но только что запустил и никакие vendor/ каталоги не закрашены по-другому.   -  person JimB    schedule 21.05.2018
comment
Я только что выполнил эти шаги с чистым проектом (Hello World), и Visual Studio Code успешно находит зависимости поставщика, а каталог поставщика имеет тот же цвет, что и другие каталоги. Я удалил vendor из reports / .gitignore, и ошибка VS Code исчезла.   -  person Martin Flower    schedule 21.05.2018


Ответы (1)


Как сообщалось о проблеме vscode-go на github 1587, мое решение заключалось в добавлении следующего в настройки пользователя (Код> Настройки> Настройки)

{ "search.useIgnoreFiles": false }
person Martin Flower    schedule 03.06.2018