解決したいこと
- とあるprotoファイルから別ディレクトリのprotoファイルに定義されているenumを使用したい。
- エラーが発生し解決できない。
エラー内容
protos/user/v1/user.proto:○:○:../../enums/v1/subject.proto: is outside the context directory make[1]: *** [proto] Error 100
ディレクトリ構成
- protos - enums - v1 - subject.proto - user - v1 - user.proto
protoファイル
user.protoからsubject.protoをimportして、Subjectのenumを使用したい。
subject.proto
1syntax = "proto3"; 2 3package enums.v1; 4 5option go_package = "対象のパス"; 6 7enum Subject { 8 Subject_UNSPECIFIED = 0; 9 MATH = 1; 10 ENGLISH = 2; 11 SCIENCE = 3; 12}
user.proto
1syntax = "proto3"; 2 3package user.v1; 4 5option go_package = "対象のパス"; 6 7// subject.proto を import 8import "../../enums/v1/subject.proto"; 9 10service UserService { 11 rpc Get(GetRequest) returns (GetResponse) {}; 12} 13 14message GetRequest {} 15 16message GetResponse { 17 // import した subject.proto の Subject の enum を定義したい 18 v1.Subject subject = 1; 19}
試したこと
- 速習 .proto ファイルの書き方を参考にして、importしたパスが合っているか確認しました。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。