首页 文章

将'library'指令添加到使用protoc生成的dart代码中

提问于
浏览
0

有人能告诉我如何使用领先的库指令生成protoc来生成dart文件吗?

我'm using the dart-protoc-plugin (v0.10.2) to generate my dart, c++, c#, js and java models from proto files. I was under the impression there was no way to get protoc to add a '库'指令生成的dart文件,直到我注意到该指令出现在另一个项目中(见date.pb.dart) .

如果我采用相同的文件(date.proto),我无法获得protoc来生成包含'library'指令的dart文件 .

简而言之:我想带一个包含以下内容的.proto文件

syntax = "proto3";

package another.proj.nspace;

message MyObj {
  ...
}

并生成一个.dart文件,其前导'library'指令类似于以下代码段

///
//  Generated code. Do not modify.
///
// ignore_for_file: non_constant_identifier_names,library_prefixes
library another.proj.nspace;
...

NOTE :我不关心指令的实际值,因为我可以重构我的代码以获得所需的结果 . 我只需要一种方法来为protoc添加库指令......

我用来生成dart文件的基本命令是

protoc --proto_path=./ --dart_out="./" ./another/proj/nspace/date.proto

不幸的是,dart-protoc-plugin的README不是很有帮助,我不得不通过源代码找出可用的选项;目前似乎唯一的飞镖特定选项与grpc有关 .

我尝试过其他语言的选项(例如'library'和'basepath')没有任何成功 .

如果可能的话,它会简化我的工作流程,但我开始觉得date.pb.dart中的库指令是在代码生成后添加的...

1 回答

  • 0

    在稍微询问一下后,似乎在某个阶段(see pull request)从protoc插件中删除了库指令,因此不再支持它 .

相关问题