.proto转换为.cs解析报错处理

   日期:2020-10-16     浏览:117    评论:0    
核心提示:Protobuf 之 .proto转换为.cs文件方法及问题网上Protobuf 转换.cs的博客有很多,本文主要列举一下转换过程中可能出现的问题及报错的解决方法。目录Protobuf 之 .proto转换为.cs文件方法及问题一、正常转换方法1、准备资源2、命令行转换二、命令行转换报错解决方案1、提示路径错误,找不到.proto文件,如下图:2、Unrecognized syntax identifier "proto3". This parser only recognizes "proto2".

Protobuf 之 .proto转换为.cs文件解析报错处理方法

网上Protobuf 转换.cs的博客有很多,本文主要列举一下转换过程中可能出现的问题及报错的解决方法。

目录

  • 一、正常转换方法
    • 1、准备资源
    • 2、命令行转换
  • 二、命令行转换报错解决方案
    • 1、提示路径错误,找不到.proto文件,如下图:
    • 2、Unrecognized syntax identifier "proto3". This parser only recognizes "proto2".,

一、正常转换方法

1、准备资源

可以在git上下载最新的protobuf自己解析,我的主页里分享有protobuf-3.13.0版本,
下载地址:
https://download.csdn.net/download/qq_43505432/12922490

下载后的文件如图:


.
或者直接下载解析工具protoGen,下载地址:https://download.csdn.net/download/qq_43505432/12922514

下载后的文件如图:


下面说说用protoGen解析工具怎么转.cs文件。

2、命令行转换

将下载好的文件中的protogen.exe拖拽到doc命令面板上,然后输入 -i: 然后将要转换的.proto文件拖拽到doc面板上 ,然后输入 -o:然后输入要生成文件所在目录以及文件名称
注意:解析路径一定要是英文路径

E:\ProtoBuf\ProtoGen\是我放解析工具的地址,需要换成自己的地址。

E:\ProtoBuf\ProtoGen\protogen.exe -i:E:\ProtoBuf\ProtoGen\Text.proto -o:E:\ProtoBuf\ProtoGen\Text.cs

或者cd进入文件内部再解析,如下图:


输入命令行回车,若无报错则解析成功,可以看到文件中多了.cs文件。

二、命令行转换报错解决方案

1、提示路径错误,找不到.proto文件,如下图:

报错提示:File does not reside within any path specified using --proto_path (or -I). You must specify a --proto_path which encompasses this file. Note that the proto_path must be an exact prefix of the .proto file names – protoc is too dumb to figure out when two paths (e.g. absolute and relative) are equivalent (it’s harder than you think).
An error occurred parsing Test.proto

原因:增加了-i 后,protogen不在当前目录寻找proto文件了,所以找不到.proto文件。

解决方案

  1. cd 进入文件内部再开始解析,如下图:

  2. 尝试使用如下命令行(未亲测,不知道行不行):

protogen --cpp_out=. Test.proto -I../data -I../config -I.
var foo = 'bar';

.

2、Unrecognized syntax identifier “proto3”. This parser only recognizes “proto2”.,

如下图:


报错提示: Unrecognized syntax identifier “proto3”. This parser only recognizes “proto2”.
An error occurred parsing backpack.proto
原因:很明显,你下载的解析工具和要解析的.proto文件不是同一个版本,可以打开.proto文件,查看protobuf版本。根据提示下载相应版本的解析工具就行。

.

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服