iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > GO >冲突问题:Golang中的protobufs命名问题
  • 734
分享到

冲突问题:Golang中的protobufs命名问题

2024-04-05 00:04:40 734人浏览 独家记忆
摘要

对于一个golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《冲突问题:Golang中的protobufs命名问题》,主要介绍了,希望对

对于一个golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《冲突问题:Golang中的protobufs命名问题》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

我有两个相互通信并具有单独的原型文件的服务。两者之间有一些共同的消息类型。当尝试测试运行时,我得到:

2020/08/24 13:40:42 WARNING: proto: file "delivery.proto" has a name
  conflict over release.Patient     previously from:
 "gitlab.com/dhf0820/roirelease/protobufs/relPB"    currently from: 
 "gitlab.com/dhf0820/roi_delivery/protobufs/delPB"

如您所见,它们有不同的包名称 relpb 和 delpb。患者在这两种服务中使用,我在两者之间编组/解组以发送正确的消息。我不确定这是否是正确的方法。

有没有更好的方法或者发生了什么。我似乎有独特的名字。


解决方案


看起来这些名称在生成的 Go 代码域中是唯一的,但在 protobuf 域中不是唯一的。

您确实可以将 protobuf 视为自己的语言,具有自己的包和命名空间语义(实际上,类似于 c++)。在该域中,实际的文件名并不重要,重要的是文件中定义的包。

您的两个文件可能都有 package release; 位于顶部。这意味着,在 protobuf 世界中, release.Patient 被定义了两次。 protoc 可能仍然能够意外生成工作 Go 代码,但它仍然是一个格式错误的原型定义。如果您尝试在其他语言(例如 C++)中使用相同的定义,或者尝试使用依赖于原型反射的库,您可能不会有同样的运气。如果您尝试将其中一条消息用作另一个文件中的字段,它也可能会中断;它指的是哪个 release.Patient

本篇关于《冲突问题:Golang中的protobufs命名问题》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注编程网公众号!

您可能感兴趣的文档:

--结束END--

本文标题: 冲突问题:Golang中的protobufs命名问题

本文链接: https://www.lsjlt.com/news/595919.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 冲突问题:Golang中的protobufs命名问题
    对于一个Golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《冲突问题:Golang中的protobufs命名问题》,主要介绍了,希望对...
    99+
    2024-04-05
  • jQuery命名冲突问题怎么解决
    这篇文章主要介绍“jQuery命名冲突问题怎么解决”,在日常操作中,相信很多人在jQuery命名冲突问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jQuery命名...
    99+
    2024-04-02
  • 解决Mybatis中mapper的ID冲突问题
    mapper 的id冲突原因: 原因一: 在同一个mapper.xml中存在相同的ID 原因二: 同时使用了xml配置和注解配置 解决方案: 只保留xml或者注解即可!!! Myb...
    99+
    2024-04-02
  • 解决docker与vmware的冲突问题
    1、docker启动问题: 问题解决: 需要开启Hyper-V,(开启方法:控制面板->程序->程序和功能->启动或关闭Windows功能,然后再重新启动电脑) ...
    99+
    2024-04-02
  • 怎么解决Maven冲突问题
    这篇文章主要介绍“怎么解决Maven冲突问题”,在日常操作中,相信很多人在怎么解决Maven冲突问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么解决Maven冲突问题”...
    99+
    2024-04-02
  • 解决SpringBoot中MultipartResolver和ServletFileUpload的冲突问题
    目录MultipartResolver和ServletFileUpload冲突1.首先spring boot默认会调用MultipartResolver2.需要重写一个MyMulti...
    99+
    2024-04-02
  • 怎么处理jQuery冲突问题
    这篇文章主要介绍怎么处理jQuery冲突问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!jquery是什么jquery是一个简洁而快速的JavaScript库,它具有独特的链式语法和短小清晰的多功能接口、高效灵活的...
    99+
    2023-06-14
  • 怎么解决Git合并冲突的问题
    本篇内容介绍了“怎么解决Git合并冲突的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!合并并不仅仅是简单的文件添加、移除的操作,Git ...
    99+
    2023-06-04
  • maven冲突依赖问题如何解决
    Maven冲突依赖问题可以通过以下方法解决: 使用`mvn dependency:tree`命令查看项目的依赖树,找到冲突的依赖...
    99+
    2023-10-27
    maven
  • gradle依赖冲突问题怎么解决
    在Gradle中,依赖冲突通常是由于不同的依赖项引入了相同的库的不同版本造成的。以下是一些解决依赖冲突问题的方法:1. 使用`gra...
    99+
    2023-10-11
    gradle
  • css样式冲突的问题如何解决
    本篇内容介绍了“css样式冲突的问题如何解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、 细化选择符通过使用组合器(Combinato...
    99+
    2023-06-20
  • 如何解决共享资源的访问冲突问题?
    php小编草莓将为您介绍如何解决共享资源的访问冲突问题。在多线程或多进程编程中,当多个线程或进程同时访问共享资源时,可能会导致数据不一致或错误的结果。为了解决这个问题,可以使用互斥锁、...
    99+
    2024-02-10
    同步机制
  • mysql主键冲突的问题如何解决
    本篇内容介绍了“mysql主键冲突的问题如何解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!说明忽略冲突保留原始记录。冲突更新冲突后部分字...
    99+
    2023-06-20
  • Android 中ScrollView与ListView冲突问题的解决办法
    Android 中ScrollView与ListView冲突问题的解决办法自定义MyListViewpublic class MyListView extends ListView { public MyListView(Context...
    99+
    2023-05-30
    android scrollview listview
  • React样式冲突解决问题的方法
    目录前言:CSS IN JS一、概念二、CSS Modules三、在项目中使用css Modules四、css module配合sass五、module.scss 使用步骤:六、总结...
    99+
    2023-03-10
    React样式冲突 React样式
  • 如何解决docker与vmware的冲突问题
    这篇文章给大家分享的是有关如何解决docker与vmware的冲突问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、docker启动问题:问题解决:需要开启Hyper-V,(开启方法:控制面板->程序-...
    99+
    2023-06-14
  • 如何解决css样式冲突问题
    本篇内容主要讲解“如何解决css样式冲突问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决css样式冲突问题”吧! 解决方法...
    99+
    2024-04-02
  • Bootstrap与UEditor中Css冲突问题怎么解决
    这篇“Bootstrap与UEditor中Css冲突问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面...
    99+
    2024-04-02
  • Vue中使用touchstart、touchmove、touchend与click冲突问题
    目录使用touchstart、touchmove、touchend与click冲突事件执行顺序触摸事件(touchstart、touchmove和touchend)下面具体说明总结使...
    99+
    2023-01-28
    Vue使用touchstart Vue使用touchmove Vue使用touchend touchend与click冲突
  • VSCode中Eslint和Prettier冲突问题如何解决
    这篇文章主要讲解了“VSCode中Eslint和Prettier冲突问题如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“VSCode中Eslint和Prettier冲突问题如何解决”吧...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作