私のプロジェクトツリーは$GOPATH/src/gillab.myfirm.ru/golang/rkn
依存関係を取得するためにグライドを使用しようとしていますglide install
そして私は問題で立ち往生しています:
[ERROR] Error scanning gitlab.myfirm.ru/golang/rkn/events: cannot find package "." in:
/Users/droot/.glide/cache/src/https-gitlab.myfirm.ru-golang-rkn/events
グライドが私に何を求めているのか正確にはわかりません。このようなパッケージは何ですか"."
?
$GOPATH/src/gitlab.myfirm.ru/golang/rkn/event/events.go
インポートは4つだけです
package events
import (
"github.com/streadway/amqp"
log "github.com/Sirupsen/logrus"
"fmt"
"gitlab.myfirm.ru/golang/rkn/config"
)
........
私が別の4つのパッケージで得た同じ問題。
私は答えを見つけました。
Glideがキャッシュファイルを作成するとき、gitはそこにあります。
master
にfoo package
があり、someBranch
にもbar package
がある場合、glide install
をグライドすると、gitブランチもキャッシュされ、キャッシュからmaster
になります。デフォルトとしてブランチ。
解決策はcd /Users/droot/.glide/cache/src/https-gitlab.myfirm.ru-golang-rkn/
とチェックアウトキャッシュブランチgit checkout someBranch
です。
このエラーは、GoコードがGithubに存在しない、または存在しなくなったパッケージをインポートしようとしたときに発生する可能性があることがわかりました。
たとえば、以前はパッケージgithub.com/hashicorp/terraformbuiltin/providers/aws
存在:
https://github.com/hashicorp/terraform/tree/v0.9.6/builtin/providers
ただし、Terraform 0.11以降、移動されました: https://github.com/hashicorp/terraform/tree/v0.11.2/builtin/providershttps://github.com/terraform-providers/terraform-provider-aws