установить $ GOPATH для проекта / терминалов vscode - PullRequest
0 голосов
/ 19 октября 2018

Я хочу установить $ GOPATH для каждого проекта / рабочей области vscode.Прямо сейчас, в .vscode / settings.json, у меня есть:

{
    "go.gopath": "$HOME/codes/huru"
}

Я закрываю vscode и открываю заново, а в терминале командной строки я повторяю $ GOPATH, и он пуст.Я надеялся, что vscode будет читать переменную env из "go.gopath", но, похоже, этого делать не нужно.

Кто-нибудь знает, как это сделать?

enter image description here

enter image description here

1 Ответ

0 голосов
/ 19 октября 2018

Установка go.gopath в пользовательских настройках или настройках рабочего пространства заменит значение GOPATH в коде VS.Это значение GOPATH отображается при выполнении команды Go: Current GOPATH, , а не $GOPATH переменная среды .

Значение go.gopath не заменит $GOPATH переменная среды .

Пояснение от GOPATH в расширении VS Code Go :

Из коробки расширение использует значениепеременная окружения GOPATH.Начиная с Go 1.8, если такая переменная среды не задана, то используется значение по умолчанию GOPATH, расшифрованное из команды go env.

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

Ниже я добавлю изображение, которое может вам помочь.

  • По существу, у меня уже есть переменная $GOPATH env для моей локальной системы с определенным значением.Затем я установил go.gopath в пользовательских настройках (с другим значением по сравнению с $GOPATH).Когда я выполняю команду Go: Current GOPATH, в правом нижнем углу появляется всплывающее окно, показывающее то же значение, что и в моих настройках go.gopath.Я помещаю красную линию на все это.
  • Но, когда я выполняю команду оболочки echo $GOPATH на терминале, вывод все еще остается значением $GOPATH из моей переменной env (синяя линия) .Это связано с тем, что настройка go.gopath не заменит переменную $GOPATH env.

enter image description here


В вашем случае echo $GOPATH возвращает пустой вывод, потому что вы не установили переменную окружения $GOPATH.

...