суббота, 13 февраля 2021 г.

Модули в Golang: команды с поддержкой модулей

Большинство команд go могут выполняться в режиме с поддержкой модулей (module-aware mode) или в режиме GOPATH. В режиме с поддержкой модулей команда go использует файлы go.mod для поиска зависимостей с поддержкой версий и обычно загружает пакеты из кеша модулей, загружая модули, если они отсутствуют. В режиме GOPATH команда go игнорирует модули; она ищет зависимости в каталогах поставщиков (vendor directories) и в GOPATH.

Режим с поддержкой модулей активен по умолчанию всякий раз, когда файл go.mod обнаруживается в текущем каталоге или в любом родительском каталоге. Для более детального управления переменная среды GO111MODULE может иметь одно из трех значений: on, off или auto.

  • Если GO111MODULE = off, команда go игнорирует файлы go.mod и работает в режиме GOPATH.
  • Если GO111MODULE = on, команда go выполняется в режиме с поддержкой модулей, даже если файл go.mod отсутствует. Не все команды работают без файла go.mod.
  • Если GO111MODULE = auto или не задано, команда go запускается в режиме с поддержкой модулей, если файл go.mod присутствует в текущем каталоге или любом родительском каталоге (поведение по умолчанию).

В режиме с поддержкой модулей GOPATH больше не определяет значение импорта во время сборки, но по-прежнему сохраняет загруженные зависимости (в GOPATH/pkg/mod) и установленные команды (в GOPATH/bin, если GOBIN не установлен).


Читайте также:


Комментариев нет:

Отправить комментарий