Установка пакетов на уровне проекта с Go - PullRequest
0 голосов
/ 20 апреля 2020

Я недавно начал работать с Go и заметил, что при запуске go get <some_url> пакеты устанавливаются в c: // users / [user] / go / pkg. Мне было интересно, есть ли способ установить пакеты внутри проекта root, как я бы сделал с npm install при работе с узлом? Такое же поведение, если я использую go mod init <my_proj>. Похоже, что go mod init <my_proj> устанавливает мой проект только внутри c: // users / [user] / go / pkg.

Спасибо.

1 Ответ

1 голос
/ 20 апреля 2020

Полагаю, вы спрашиваете об этом, потому что хотите продавать свои зависимости. По умолчанию зависимости хранятся в каталоге $GOPATH/pkg/mod, но система модулей также поддерживает . Вот c о том, как вы можете его использовать:

go mod vendor

создаст каталог поставщика в root проекта и сохранит там ваши зависимости. Затем, если вы хотите построить / test / et c проект с использованием зависимостей от поставщика, вам нужно запустить go build/test с флагом -mod=vendor (поскольку go1.14 этот флаг добавляется автоматически, если в вашем пакете есть каталог vendor) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...