다양한 언어로 빌드 할 때 내가 포함하는 proto 파일을 공개적으로 사용할 수있는 방식으로 proto 파일을 빌드하려고합니다. 시도했지만 import public "webrtc/signaling.proto"
"사용되지 않음"메시지가 제거되었지만 명령을 사용할 때 RTCMessage의 메시지 유형은 여전히 내 C # 빌드 Mafia.cs에 포함되지 ./protoc.exe -I=G:/MafiaProject/MafiaProtobuf/protofiles --csharp_out=G:/MafiaProject/MafiaProtobuf/csharp_out G:/MafiaProject/MafiaProtobuf/protofiles/mafia.proto
않지만 이동을 위해 빌드 할 때 포함 된 것 같습니다.
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 #을 위해 모든 파일을 개별적으로 빌드하고 개별적으로 복사해야합니까?
proto 파일의 모든 경로를 protoc 명령에 대한 입력 인수로 전달해야합니다. 예를 들면 다음과 같습니다.
protoc -I = "."/ MafiaProject / MafiaProtobuf / protofiles --csharp_out = "."/ MafiaProject / MafiaProtobuf / csharp_out MafiaProject / MafiaProtobuf / protofiles / .proto MafiaProject / MafiaProtobuf / protofiles / webrtc / .proto
다음과 같은 트리 구조를 고려하십시오.
MafiaProject
└── MafiaProtobuf
├── csharp_out
│ ├── Mafia.cs
│ └── Signaling.cs
└── protofiles
├── mafia.proto
└── webrtc
└── signaling.proto
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다