首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >grpc不能正确编译我的消息

grpc不能正确编译我的消息
EN

Stack Overflow用户
提问于 2020-12-15 18:02:02
回答 1查看 62关注 0票数 0

我正在尝试编译我的.proto文件:

代码语言:javascript
复制
syntax = "proto3";

package chat;

message Person {
  string name = 1;
  string family = 2;
  int32 age = 3;
}

message SearchPerson {
  string name = 1;
}

service PersonService {
  rpc GetPerson (SearchPerson) returns (Person) {}
  rpc GetPeople (SearchPerson) returns (stream Person) {}
}

当我运行这个命令时:

代码语言:javascript
复制
./bin/protoc --go-grpc_out=. ./proto/person.proto

为我创建了一个新文件(person_grpc.pb.go),但我的消息和服务有一个错误:

代码语言:javascript
复制
UnResolved Type for SearchPerson

您可以看到,新文件为我的消息和服务提供了错误(未解析类型)。问题出在哪里?

EN

回答 1

Stack Overflow用户

发布于 2020-12-15 19:00:24

我建议您在理想情况下反映包/项目路径的文件(as described in the doc)中添加go_package指令,例如:

代码语言:javascript
复制
syntax = "proto3";

package chat;

option go_package = "example.com/foo/chat";

// option go_package = "chat";


message Person {
  string name = 1;
  string family = 2;
  int32 age = 3;
}

然后相应地更改您的脚本

代码语言:javascript
复制
./bin/protoc --go-grpc_out=./chat ./proto/person.proto

然后,您应该能够从项目的chat包中使用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65303661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档