proto 同级文件引入问题小记

news2025/1/11 16:59:15

文章目录

    • 1. 写在最前面
    • 2. 关于报错
      • 2.1 增加字段前
      • 2.2 增加字段后
    • 3. 临时解决办法
      • 3.1 合并
      • 3.2 写入绝对路径
    • 4. 原因
    • 5.碎碎念
    • 6. 参考资料

1. 写在最前面

笔者昨天遇到一个十分奇怪的事情,「在同一级目录的 proto 文件,引用的时候,报找不到的错误」。但是考虑的开发任务十分紧急,需要在大概一个小时的时间里,开发、编译、部署、联调完成。(ps: 不要问为什么这么急,问就是有客户需要等着用)

本来是个几分钟就能完成的任务,就是 proto 文件里加几个字段,然后编译一下。但是就是加了这几个字段之后,编译就回提示找不到文件。害的我多花了十几分钟,所以很值的记录一下,临时想到的解决方案。(ps:现在我还是没有找到为什么引用失败的原因,后面找到的时候,再来补充吧!)

2. 关于报错

2.1 增加字段前

在这里插入图片描述

注:引入好好的,没有报错,这个文件还是笔者自己加的!世界就是这么的奇妙

2.2 增加字段后

在这里插入图片描述

注:同样的文件,我就增加了几个字段,然后就开始提示文件找不到

3. 临时解决办法

办法总比困难多,关于上面的这个报错,笔者飞快的转动大脑,为了赶上交付的进度,想出来两种临时性的解决办法。

3.1 合并

思路:多个 proto 文件定义清晰,但是非常时期,非常对待,可以将 「detail_info.proto」文件中定义的结构全部转移到引入失败的 proto 文件中。

结论:「本方案可行,但是有点脏,可能代码 review 的时候,会被喷」

3.2 写入绝对路径

思路:既然同级的 proto 文件引入失败,那笔者写一个绝对路径的文件,理论上应该是可以找到。

结论:「可以找到,且被喷的概率降低」,见下图

在这里插入图片描述

4. 原因

出现引入失败的原因,我暂时还没发现,但是查询的时候,确实看到 github 上有好几个跟我一样的问题。他们都给了解决方案 ,但是都没有给出原因。增加本章节方便后续查到后补充。

5.碎碎念

本月是身体脆皮月,不是生病就是在生病的路上,看来还是要坚持健身、按时吃饭,毕竟身体是革命的本钱。

  • 我经常在睡不着的时候反思
    反思那些我走过的路
    我做过的决定
    如果重来的话
    我会不会做出不同的选择?

  • 会在某一瞬间觉得自己走错了很多的路
    包括学习、工作、朋友和爱人
    如果重来
    以当年那个年龄的心智和阅历
    或许重蹈覆辙也是必然

  • 这一生有许多人朝我走来
    然后又匆匆忙忙消失在人海
    那些人与我短暂交错
    从开始的不舍
    到最后的习以为常

  • 很难定义我真正拥有过什么
    热闹会平息
    爱会消失
    宠物和父母会先一步离开我们
    亲密的朋友在某一天退出我的生活

  • 但人生一趟
    是参与和体验
    是感受世界
    没有任何东西是被我真正拥有的
    也什么都留不住

6. 参考资料

  • Importing proto files from the same folder raises "File not found" error · Issue #68 · ksprojects/protobuf-jetbrains-plugin · GitHub

  • Import file was not found or had errors · Issue #56 · zxh0/vscode-proto3 · GitHub

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1959751.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据中台建设之数据采集

目录 一、数据采集 1.1 概述 1.2 线上行为采集 1.2.1 概述 1.2.2 客户端埋点 1.2.2.1 埋点方式分类 1.2.2.2 优略势分析 1.2.2.3 埋点举例 1.2.3 服务端埋点 1.3 线下行为采集 1.3.1 概述 1.3.2 网络信号采集 1.3.3 图像识别采集 1.3.4 设备日志采集 1.4 互联网数…

演播室级字幕技术,性能卓越,满足多场景需求

如何在浩如烟海的视频内容中脱颖而出,成为每个企业亟需解决的关键问题。美摄科技,作为视频编辑处理技术的领航者,携其革命性的视频编辑处理SDK,特别是行业领先的字幕模块,为企业视频创作带来了前所未有的变革与升级。 …

springboot多媒体内容管理系统-计算机毕业设计源码08580

摘 要 随着人类向信息社会的不断迈进,风起云涌的信息时代正掀起一次新的革命,同时计算机网络技术高速发展,网络管理运用也变得越来越广泛。因此,建立一个多媒体内容管理系统(CMS)的设计与优化来管理多媒体内…

第三周:网络应用(上)

一、网络应用(层)内容概述 我们已经知道,Internet的体系结构是符合TCP/IP协议栈的,而“应用层”就在这个协议的最上层。 本讲内容包括: 二、网络应用的基本原理 常见网络应用包括: 问:网络应…

Redis 缓存中间件

目录 概念 安装redis redis基本命令 给redis添加密码 基础数据类型 string类型 list列表类型 set创建(一个键对应一个值) set 创建数据 get 获取数据 keys * 展示所有的键 exists 判断键值是否存在 type 查看数据的类型 del 删除键 rename…

期刊评价指标及其查询方法

1、期刊评价体系一 科睿唯安《期刊引证报告》(Journal Citation Reports, JCR) 科睿唯安每年发布的《期刊引证报告》(Journal Citation Reports, JCR)是一个独特的多学科期刊评价工具。JCR数据库提供基于引文数据的统计信息的期…

数字信号||快速傅里叶变换(FFT)(4)

实验四 快速傅里叶变换(FFT) 一、实验目的 (1)加深对快速傅里叶变换(FFT)基本理论的理解。 (2)了解使用快速傅里叶变换(FFT)计算有限长序列和无限长序列信号频谱的方法。 (3)掌握用MATLAB语言进行快速傅里叶变换时常用的子函数。 二、实验涉及的MATLAB子函数 1.fft 功能&am…

鸟哥的Linux私房菜(三)之环境开发工具篇

文章目录 Linux软件包管理器 - yumLinux下安装软件的方式认识yum查找软件包安装软件如何实现本地机器和云服务器之间的文件互传及其云服务器之间互传卸载软件 Linux编辑器 - vimvim的基本概念vim下各模式的切换vim命令模式各命令汇总vim底行模式各命令汇总vim替换模式各命令汇总…

快速幂的求解方法(位运算)

需要求解幂运算的解法,可以将需要运算的内容进行判别,众所周知,幂就是指数,就是将底数乘以自身完成n次自相乘,那么就可以幻化为他的幂的简化计算; 以二进制为例,你要求,即可以看作是…

win10系统通过docker部署pytorch的GPU环境

命名实体有关文章参考这篇文章 中文地址命名实体识别训练和预测 win10系统安装cuda环境参考这篇文章 搭建Pytorch的GPU环境超详细 文件结构 准备环境 (1)、安装cuda环境 (2)、安装docker 1、创建基础镜像,安装pytorch和python dockerfile # 使用适当的基础镜像 FROM…

安全防护软件的必要性:从微软蓝屏事件谈起

最近微软遭遇了的大规模蓝屏事件,让全球很多用户措手不及。这次事件告诉我们,保护我们的电脑和数据,安全防护软件是多么重要。 微软蓝屏事件源于网络安全公司CrowdStrike的技术更新错误,导致全球范围内大量Windows用户系统崩溃&a…

一元二次方程编程求解过程+题目

输入 输入的第一行包含两个正整数 T,M,分别表示方程数和系数的绝对值上限。 接下来 T 行,每行包含三个整数 a,b,c。 输出 输出 T 行,每行包含一个字符串,表示对应询问的答案,格式如题面所述。 每行输出的字符串中…

【netty系列-06】深入理解select、poll和epoll多路复用的区别

Netty系列整体栏目 内容链接地址【一】深入理解网络通信基本原理和tcp/ip协议https://zhenghuisheng.blog.csdn.net/article/details/136359640【二】深入理解Socket本质和BIOhttps://zhenghuisheng.blog.csdn.net/article/details/136549478【三】深入理解NIO的基本原理和底层…

分布式架构网络通信(RPC,RMI) 03

文章目录 1. 基本原理2. RPC 远程过程调用3. RMI 远程方法调用4. RMI代码实现4. BIO、NIO、AIO4.1 同步和异步4.2 阻塞和非阻塞4.3 BIO4.4 NIO4.5 AIO 1. 基本原理 要实现网络机器间的通讯,首先得来看看计算机系统网络通信的基本原理,在底层层面去看&am…

WSL桥接网络配置

仅做记录与分享,平台版本等不同无法指导更多。 一、需求 ubuntu虚拟机(WSL)桥接win11并且能联通外网(百度之类) 二、环境: 版本 Windows 11 专业版 版本号 23H2 安装日期 ‎2024/‎6/‎20 操作系统版本…

Mysql 集群搭建 05

文章目录 1. Mysql主从复制集群搭建1.1 主库配置1.2 从库配置 2. 分库分表2.1 拆分策略2.2 实现技术2.2.1 MyCat概述2.2.2 MyCat入门2.2.3 配置 schema.xml 3. 双主双从4. 双主双从读写分离 1. Mysql主从复制集群搭建 主从复制是指将主数据库的 DDL 和 DML 操作通过二进制日志…

有什么开放式耳机比较好用?耳机选购指南附赠五款开放式耳机推荐!

现在的耳机市场真的越来越多元了,最近的开放式耳机也是越来越火了,很多小伙伴都在后台开始问我,到底要怎么样才能选到一款比较合适自己的开放式耳机呢?开放式耳机现在这么多品牌,这么多的型号,真的很难选择…

如何评估自动化测试的效益

目录 自动化测试实施成本 自动化前期开发成本包括: 后期维护成本包括: 自动化测试执行次数 自动化测试实施成本比 其中“自动化测试收益”可能包括: “自动化测试成本”包括但不限于: 测试稳定性 可扩展性和可维护性 自动…

java拼接字符串的四种方法StringBuilder、StringBuffer、StringJoiner、String.join(x,x )

1.直接复制以下代码运行查看运行结果 import java.util.ArrayList; import java.util.List; import java.util.StringJoiner;public class Test {public static void main(String[] args) throws Exception {List<String> strs new ArrayList<>();strs.add("…

“等保测评:如何进行有效的安全漏洞管理与网络安全法规遵从“

随着网络环境的复杂性增加&#xff0c;安全漏洞管理成为企业信息安全管理体系中的关键环节。等保测评要求企业具备发现、评估、修复和监控安全漏洞的能力&#xff0c;以保障信息系统的安全稳定运行。本文将围绕“等保测评&#xff1a;如何进行有效的安全漏洞管理”这一主题&…