Автоматически импортировать сторонние пакеты go
Я новичок в GO lang, и мне было интересно, есть ли способ автоматически загрузить все импортируемые файлы. Итак, давайте предположим, что мне нужно использовать github.com/gorilla/mux
и несколько других пакетов в моей кодовой базе. Должен ли я вручную перейти к моей ~/go/src
и беги go get repo
или есть более разумный способ управления зависимостями. Я использую Goland IDE для своей разработки. Любая помощь приветствуется.
3 ответа
если есть способ автоматически загрузить все импортные
Вы можете скачать все импортированные pkgs и их зависимости, запустив go get
из командной строки.
Я использую Goland IDE для своей разработки
Я тоже использую Голанд. Если не удается найти импорт (т. Е. Путь импорта выделен красным цветом), вы можете поместить над ним курсор ввода и нажать alt + enter
и выберите go get ...
из всплывающего окна для автоматического импорта.
Есть несколько подходов:
- Просто
go get github.com/gorilla/mux
который будет загружать источники в вашем$GOPATH
и будет решен автоматически при компиляции - Использовать управление зависимостями (godep, glide[устарело])
- Используйте модули (экспериментальная функция в Go 1.11 - Модуль. Проверьте больше здесь)
Если вы хотите хорошее и стабильное решение, используйте dep
(Прежде всего, вы должны установить его, а затем запустить:
cd $GOPATH/src/path/to/project
dep init
dep ensure -add github.com/gorilla/mux
Вы увидите новую папку vendor
в вашем проекте и 2 новых файла конфигурации зависимостей Gopkg.lock
а также Gopkg.toml
, Подробнее о годепе читайте здесь.
Затем запустите ваш основной файл как обычно.
Ты можешь использовать dep
менеджер пакетов, который проследит за вашим кодом и автоматически импортирует все пакеты, которые вы используете в своем коде. Если вы работаете с>go1.11, я бы предложил использовать недавно добавленные go mod
,