Я пытался построить модуль на Go v1.13 с зависимостями на github.com/aws/aws-lambda-go
и github.com/aws/aws-sdk-go
, которые не срабатывают при двух импортах:
"github.com/aws/aws-sdk-go/aws/service/s3"
"github.com/aws/aws-sdk-go/aws/service/s3/s3manager"
Stderr выглядит следующим образом для GOOS=linux GOARCH=amd64 go build -o dist/api ./api
где каталог api
содержит определение моего модуля:
api/main.go:11:2: cannot find package "github.com/aws/aws-sdk-go/aws/service/s3" in any of:
/usr/local/go/src/github.com/aws/aws-sdk-go/aws/service/s3 (from $GOROOT)
/u/go/src/github.com/aws/aws-sdk-go/aws/service/s3 (from $GOPATH)
api/main.go:12:2: cannot find package "github.com/aws/aws-sdk-go/aws/service/s3/s3manager" in any of:
/usr/local/go/src/github.com/aws/aws-sdk-go/aws/service/s3/s3manager (from $GOROOT)
/u/go/src/github.com/aws/aws-sdk-go/aws/service/s3/s3manager (from $GOPATH)
Честно говоря, я понятия не имею, почему это происходит, и любые входные данные будут оценены.
Уже пробовали использовать go get
, чтобы убедиться, что зависимости извлечены:
$ go get github.com/aws/aws-sdk-go
и запрошенные пути импорта присутствуют в $GOPATH/src/github.com/aws/aws-sdk/go/aws/service/s3
и $GOPATH/src/github.com/aws/aws-sdk/go/aws/service/s3/s3manager
Также попытался очистить кэш с помощью go clean --cache --modcache
при удалении ранее извлеченных модулей.
При ближайшем рассмотрении, что я полностью упустил из виду, путь импорта составляет /u/go/src/github.com/aws/aws-sdk-go/aws/service/s3
вместо /u/go/src/github.com/aws/aws-sdk-go/service/s3
, при этом у первого есть дополнительный подпуть aws
внутри aws-sdk-go
.