生成的Protobuf objc .m文件具有错误的#import

问题描述 投票:0回答:1

我已经尝试从根目录为每个子文件夹生成objc原型文件:

protoc */*.proto --objc_out="../result"  -I.

enter image description here

示例示例:

syntax = "proto2";

message MyProtoType {
    required string myProtoName = 1;
}

并且protoc成功生成objc文件,但.m文件包含不正确的#import

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: MyFolder/MyProto.proto

...

#import "MyFolder/MyProto.pbobjc.h"
// @@protoc_insertion_point(imports)

...

有人可以解释如何生成正确的导入,而不用在每个子文件夹protoc中运行循环它们的脚本来运行它们,而无需运行它们protoc *.proto --objc_out="../result" -I.

objective-c protocol-buffers proto
1个回答
0
投票

生成的代码没有错。如果要生成没有任何路径的#import语句,并且不介意输出文件是否位于根目录而不是.proto文件的位置,请使用--proto_path将文件夹添加到协议搜索目录中。

protoc */*.proto --objc_out=. --proto_path MyFolder
© www.soinside.com 2019 - 2024. All rights reserved.