【发布时间】:2021-03-17 17:26:16
【问题描述】:
我正在尝试以一种方式构建我的 proto 文件,当我构建到各种语言时,我所包含的 proto 文件是公开可用的。我已经尝试过import public "webrtc/signaling.proto",它删除了“未使用”消息,但是当我使用命令./protoc.exe -I=G:/MafiaProject/MafiaProtobuf/protofiles --csharp_out=G:/MafiaProject/MafiaProtobuf/csharp_out G:/MafiaProject/MafiaProtobuf/protofiles/mafia.proto 时,RTCMessage 的消息类型仍然不包含在我的 c# build Mafia.cs 中,但似乎包含在我构建时去吧。
syntax = "proto3";
option go_package = "github.com/rgeorgeoff/webRTCProto";
package webrtc;
enum ReqType {
SDP = 0;
ICE = 1;
}
message RTCMessage {
ReqType req_type = 1;
bytes data = 2;
}
在上面的目录 mafia.proto 中:
syntax = "proto3";
option go_package = "github.com/rgeorgeoff/SlimePartyGoServer/protobuf3";
package mafia;
import "webrtc/signaling.proto";
... other definitions...
我只希望消息类型/枚举在我的构建中的构建文件 (python/go/etc) 中可用。我是否也必须为 c# 单独构建所有文件并单独复制它们?
【问题讨论】:
标签: c# go protocol-buffers protoc