我一直在使用protoc生成golang gRPC客户端和服务器代码,没有任何问题。因为我有多个使用相同数据类型的gRPC服务,所以我想引用一个base。为这些类型创建proto,而不是复制和粘贴,这是额外的工作,可能会导致不同步问题。
以下是base.proto示例:
syntax = "proto3";
package base;
message Empty {
}
message Label {
string Key = 1;
string Value = 2;
}
这是一个特定于. proto的示例:
syntax = "proto3";
import = "base.proto";
package publisher;
service ClientPublisher {
rpc Publish(stream base.Label) returns (base.Empty) {}
}
下面是我的命令:
protoc -I system-client-go/ system-client-go/client/publisher.proto --go_out=plugins=grpc:system-client-go --proto_path=system-client-go/
无论我尝试什么,它都会抛出这样的信息:
生成2019/08/01 15:31:31proc-gen-go:错误:坏Go源代码:273:7:预期类型,找到“.”(和10个以上错误),对应于行:rpc Publish(stream base. Label)返回(base.空){}
有什么想法吗?
这种错误通常是因为您的相对路径错误。尝试将特定的proto文件放在一个目录中,然后像这样导入它
import "exampleproject/specific.proto";
如果两个文件都在同一个目录中,则在此线程中解释解决方案=
基本上,golang只允许每个目录有一个包。所以protoc gen go将它们视为两个独立的库。
我有两个proto-src文件,在同一个文件夹中,比如说: 第一个是foo。协议 第二个是
我正在从事一个使用Java、C#和C应用程序的项目。为了在他们之间进行通信,我尝试使用Google协议缓冲区。我正在使用以下命令。原型文件,取自示例: 我指的是以下教程:https://developers.google.com/protocol-buffers/docs/csharptutorial 其他语言的教程也在那里。 我为每种语言尝试了以下命令行参数: Java: C:\ProtoBuf
当我尝试运行gtfs\u realtime\u pb2时,我遇到以下错误。py(通过google的协议缓冲区运行gtfs-realtime.proto生成的python代码): 这是指向我遇到问题的特定代码的链接:https://github.com/mattwigway/gtfsrdb 以及安装谷歌协议缓冲区的链接: https://developers.google.com/protocol-
我一直在试图让汽车制造商自动决定如何建造。pb。抄送和。pb。来自google协议缓冲区的hh文件。原型描述,但没有运气。 我试过在SO上使用这篇文章,但仍然不起作用。 这是我的Makefile的摘录。是: 尝试运行make时,我得到: ac\u proto\u cmd由configure填充到protoc二进制文件的路径。ac,当它检查GPB依赖关系时。我已经验证了它的格式是“/opt/comm
我已经和flutter一起工作了几个月了,似乎在一个应用程序中没有太多关于后端或高级功能的工作。我喜欢使用Flutter来帮助我设计UI,但我想使用另一种语言来帮助我做一些其他的事情。例如,我想要显示一个全屏的相机页面(几乎像Snapchat一样),或者像通过App直接向另一个用户发送一条消息。我需要别的语言来做这样的事情吗?我不是高级程序员。我只想创建能够处理和存储一点点东西的简单应用程序。
问题内容: 例如,我想在一个源文件中同时使用text / template和html / template。但是下面的代码会引发错误。 问题答案: 在规范中阅读有关它的更多信息。