Получение ошибки: "флаг сборки -mod=vendor действителен только при использовании модулей" при сборке проекта Go
Согласно этому документу мне нужно добавить -mod=vendor
на мою команду сборки, чтобы использовать мой местный vendor
папка:
По умолчанию команды go, такие как go build, игнорируют каталог vendor в режиме модуля. Флаг -mod = vendor (например, go build -mod = vendor) указывает командам go использовать каталог vendor верхнего уровня основного модуля для удовлетворения зависимостей.
Когда я запускаю эту команду:
go build -mod=vendor -a -ldflags "-s -w -X github.com/my-api/pkg/config.Version=169.3988801" -o bin/my-api
Я получаю эту ошибку:
build flag -mod=vendor only valid when using modules
Локально команда работает как положено, ошибка возникает только на сервере сборки.
1 ответ
Я думаю, что ключевая часть помощи, которую вы оказываете, when in module mode
, Это произойдет, только если вы работаете с кодом вне GOPATH или если вы установили GO111MODULE=on
переменная среды, поэтому я думаю, что у вас есть этот набор в вашей локальной среде, но не на сервере сборки.
Более подробная информация о включении поддержки модуля находится здесь: