Задать вопрос
@unique_nickname

Куда сохраняются пакеты go get?

Не очень понимаю как работает go get packagename. Пришёл из node.js, насколько я понимаю это аналогия npm?

Хотелось бы сохранять зависимости проекта локально с проектом, а не глобально, чтобы проект А не отлетал при обновлении версии пакета для проекта Б. Если указываю GOPATH=project_directory при go get packagename получаю ошибка вида "в папке найден go.mod, а его быть не должно".

Как в итоге сохранять зависимости локально в папке проекта, и куда сохраняются пакеты, если не указана переменная GOPATH?
  • Вопрос задан
  • 921 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Go-разработчик с нуля
    9 месяцев
    Далее
  • Skillfactory
    Профессия Backend-разработчик на Go
    12 месяцев
    Далее
  • Яндекс Практикум
    Go-разработчик с нуля
    8 месяцев
    Далее
Решения вопроса 1
От переменной GOPATH в Go Modules проекте ничего не зависит, все зависимости сохраняются в так называемый кэш модулей (go envGOMODCACHE). По умолчанию после установки эта переменная смотрит на /Users/user.name/go/pkg/mod.

Для использования зависимостей вместе проектом рассмотрите vendoring (go mod vendor).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы