Как разделить код в другой директории по 'go mod'? - PullRequest
0 голосов
/ 22 февраля 2020

Макет моего исходного каталога, например

mywork/libA
mywork/libA/liba.go
mywork/libA/go.mod
mywork/progB
mywork/progB/go.mod
mywork/progB/progb.go
  • В каталоге mywork / libA / я набираю go mod init example.com/mywork/liba.
  • В каталоге mywork / progB / я набираю go mod init example.com/mywork/progb.

libA / liba. go

package liba
func Hi() string {      return "hi" }

libA / go .mod

module example.com/mywork/liba

go 1.13

progB / progb. go

package main
import "example.com/mywork/liba"
func main() { println("progb:", liba.Hi()) }

progB / go .mod

module example.com/mywork/progb

go 1.13

Каталог go build in libA работоспособен. Но go build не удалось в progB и показывает

build example.com/mywork/progb: не удается загрузить example.com/mywork/liba: не удается найти модуль, предоставляющий пакет example.com/mywork / liba

Как это исправить?

1 Ответ

1 голос
/ 22 февраля 2020

progB / go .mod должен добавить операторы require и replace в https://github.com/golang/go/wiki/Modules#can -i-работа-полностью-вне-vcs-on-my-local-filesystem

module example.com/mywork/progb

require example.com/mywork/liba v0.0.0

replace example.com/mywork/liba => ../libA

go 1.13
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...