Как отладить пакет зависимостей?Если у меня есть его исходный код - PullRequest
8 голосов
/ 29 июня 2019

Проект My Go зависит от пакета example.com/foo.Я использую Go 1.12, поэтому зависимости автоматически включаются модулями Go.Теперь внутри зависимости возникает ошибка, я хочу отладить ее, добавив журнал или пошаговое выполнение.Я могу найти исходный код зависимости от GitHub, но я не знаю, как вписать его в мой проект, чтобы он заменил зависимость, извлеченную модулями Go.

Ответы [ 3 ]

5 голосов
/ 29 июня 2019

Модуль Go извлекает пакеты в $GOPATH/pkg/mod. Вы можете изменить исходный код или использовать опцию вендора go mod, чтобы перетащить пакеты в папку вендора, а затем начать там кодирование.

4 голосов
/ 29 июня 2019

Сначала загрузите все пакеты зависимостей в папку vendor.

go mod vendor

Затем измените в нем исходный код и постройте свой проект, указав поиск в папке vendor.

go build -mod=vendor

или

go run -mode=vendor myapp.go
1 голос
/ 30 июня 2019

Вы можете использовать заменить директиву :

replace example.com/original/import/path => /your/forked/import/path
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...