Перейти модули и зависимости с модифицированными поставщиками - PullRequest
4 голосов
/ 06 апреля 2019

Я пытаюсь преобразовать один проект Go в новый стандарт модулей, но у меня возникают проблемы с одной зависимостью.

В этом хранилище имеется библиотека (в данном случае golang.org/x/net/html) для добавления некоторых функций в библиотеку; Это означает, что он изменил зависимость от поставщика (добавил метод в структуру).

Таким образом, проблема заключается в том, что после выполнения go mod init, когда я выполняю go get ./..., система жалуется на вызов этой добавленной функциональности, поскольку она игнорирует модифицированного поставщика и пытается вместо этого импортировать вышестоящую библиотеку.

Есть ли способ сообщить go mod, что он должен использовать зависимость от поставщика?

1 Ответ

1 голос
/ 07 апреля 2019

Вы можете попробовать директиву replace. Что-то вроде

Первый

cd ./vendor/golang.org/x/net/html
go mod init

Тогда в корне go.mod

module your/super/module

replace golang.org/x/net/html => ./vendor/golang.org/x/net/html

require golang.org/x/net/html v0.0.0

Обратите внимание, что необходимы require и replace.

...