当前位置: 首页 > 知识库问答 >
问题:

在何处设置协议的路径以导入标准协议缓冲区

商辰钊
2023-03-14

其中需要将路径设置为协议,以获取导入标准协议缓冲区(protobuf),如清空。proto和时间戳。在Windows和Dart中的proto?

运行协议时:

protoc——dart\u out=grpc:lib/src/protos/generated-Iprotos-protos/organization。proto—plugin=protoc gen dart=D:\Users\Samuel\AppData\Roaming\Pub\Cache\bin\protoc gen html" target="_blank">dart。球棒

出现以下错误:

google/protobuf/empty。proto:找不到文件。组织proto:Import“google/protobuf/empty.proto”未找到或有错误。组织proto:14:27:“google.protobuf.Empty”未定义。

在IntelliJ的Protobuf Support(协议支持)插件上的Settings(设置)中,定义标准协议(*.proto)的路径:

此外,此路径在IntelliJ中定义在项目结构\全局库上:

代码组织。proto导入google/protobuf/empty。proto使用空类:

syntax = "proto3";

package auge.protobuf;

import "google/protobuf/empty.proto";

service OrganizationService {

    rpc GetOrganizations (google.protobuf.Empty) returns (OrganizationsResponse) {}
}

IntelliJ分析器识别IDEA上的import"google/probuf/empty.proto"类,但proc找不到。

环境是:

  • SO:Windows 7 x64
  • 协议:lib协议3.6.1
  • 飞镖:2.2.0-边缘

共有2个答案

黄修永
2023-03-14

在protobuf文件夹路径之前使用两个点

<Protobuf Include="..\Proto\protobuf.proto" ProtoRoot="Proto" />
常波鸿
2023-03-14

假设您有some/path/to/google/protobuf/empty。proto,您需要将proto\u path=/some/path/to传递给protoc,以便protoc能够找到它。

 类似资料:
  • 在阅读这个相当长的问题之前,我提出了一个bughttps://github.com/GoogleCloudPlatform/python-docs-samples/issues/1103. 原型包和名称解析的留档状态 您可以使用其他定义。通过导入原始文件。导入另一个。在proto的定义中,您可以在文件的顶部添加一条import语句。 我的依赖于annotations.proto将HTTP/JSON

  • 我试着按照你的指示去做https://github.com/golang/protobuf和https://github.com/google/protobuf/releases安装协议缓冲区。在我将bin路径从下载文件夹添加到之后,我试图运行,但它显示 有没有办法判断我是否正确安装了protobuf? 谢谢

  • 据我所知,协议缓冲区主要用于控制服务器和客户端代码的项目。我的一般问题是——协议缓冲区能否用于将二进制消息序列化/反序列化到使用现有协议的服务器?所以,我的问题: > 如果协议缓冲区不支持本机微调现有协议的序列化/反序列化方式,那么可以通过扩展添加该功能吗?是否可以以某种方式添加序列化/反序列化方法可以识别的关键字?也许这可以通过扩展或修改protobuf csharp port或protobuf

  • 我在客户机-服务器体系结构中使用协议缓冲区作为有线数据格式。域对象(JavaBeans)将经历以下生命周期。 用于客户端业务逻辑 转换为协议格式 传送到服务器 转换回域对象 用于服务器端业务逻辑 “协议缓冲器和O-O设计”部分在协议留档中建议在适当的域模型内包装生成的类。 我想找出最好的办法。 例如,我有一个简单的原型定义。 这就是域模型的定义方式。如您所见,数据完全存储在proto builde

  • 问题内容: 我有一个文件定义,需要导入,因为我使用“ 自定义选项”。 因此,在我的文件中,我这样做: 由于我的文件没有编译有关该依赖项的抱怨,因此我得到了描述符文件的副本,将其放置在与我的原型文件相同的目录中。 这解决了问题,但我不认为这是正确的方法。现在,将gets与我的文件一起编译,从而在运行时进行了2次编译: 文件附带的那个 与我的文件一起编译的那个 我认为应该以某种方式使用该选项,但不能完

  • 我目前在我的protoc.exe.旁边有一个名为addressbook.proto的文件,我在生成. h和. cc文件时遇到了困难 然而,我得到以下回应 关于我可能做错了什么有什么建议吗?