Go модули: управление зависимостями в Go
Go mod - это инструмент, который введен в Go 1.11 для управления зависимостями в проектах Go. Он позволяет разработчикам определять и управлять зависимостями проекта, а также автоматически загружать и устанавливать необходимые зависимости к базовому проекту.
Go модули (Go modules) - это набор зависимостей проекта, включая как стандартные библиотеки Go, так и сторонние зависимости, которые можно получить через сайты хранения модулей, например, Github или GitLab. Go модуль состоит из заголовочного файла модуля (go.mod), который содержит информацию о зависимостях и их версии.
Пример создания нового модуля в Go:
- Откройте терминал и перейдите в директорию, где вы планируете создать проект.
- Инициализируйте модуль с помощью команды "go mod init" и указанием имени вашего модуля:
go mod init example.com/myproject
- Эта команда создаст файл go.mod в корне вашего проекта, где будут храниться информация о зависимостях вашего проекта.
- Далее, вы можете добавить зависимости в свой проект. Например, мы можем сделать это, добавив зависимость на библиотеку "gorilla/mux":
go mod tidy
- Эта команда загрузит эту зависимость из репозитория и установит ее в ваш проект.
- Теперь вы можете использовать эту зависимость в своем проекте. Например, мы можем создать новый маршрутизатор HTTP с помощью библиотеки "gorilla/mux":
r := mux.NewRouter()
- Когда вы готовы опубликовать свой проект, вы можете перенести все свои зависимости в папку "vendor" с помощью команды "go mod vendor". Это позволит вам иметь полный контроль над зависимостями вашего проекта.
В заключении, Go mod - это инструмент, который позволяет управлять зависимостями проекта в Go, автоматически загружать и устанавливать необходимые зависимости к базовому проекту, а также упрощает процесс публикации проекта.