2016-08-18 97 views
0

我正在使用protobuf和c#,并且c# port似乎是使用proto2生成c#类的答案。我能够弄清楚,c#端口是由this SO post的dotnet 2.0构建的,我使用的是单声道最新版本,在编写本文时是4.4.x。我的命令是:无法使用C#编写Google Protobuf 2消息与单声道

mono ./ProtoGen.exe --proto_path=../idl -output_directory=../out ../my.proto 

它产生

WARNING: The runtime version supported by this application is unavailable. 
Using default runtime: v4.0.30319 

没有文件的输出,并echo $?告诉我,它与255退出。

任何提示?谢谢!

+0

不能说有关的“遗产”版本什么,但我用C#输出最新的protobuf:https://github.com/google/protobuf/release(请参阅c#部分) – SushiHangover

+0

Ya,v3明确地不兼容w/v2 – cdaringe

回答

0

这是有点埋在当前的protobuf v3.0 documentation,但是,它在编译器调用部分。

只有proto3消息被C#代码生成器支持。确保每个.proto文件开头的声明:

syntax = "proto3"; 
+0

感谢杰克,但是,根据问题的标题和描述,我明确地针对protobuf 2。 – cdaringe