Aar*_*esh 33 import protocol-buffers
我尝试使用import语句将名为test1.proto的proto文件导入另一个名为test2.proto的proto文件
import "com/test/test1.proto";
Run Code Online (Sandbox Code Playgroud)
但我得到以下错误
com/test/test1.proto: File not found.
test2.proto: Import "com/test/test1.proto" was not found or had errors.
Run Code Online (Sandbox Code Playgroud)
我试图在很多方面找到导入错误的原因,但不能.那么有人可以告诉我正确的方法进行原型文件导入,以防上述声明出现问题吗?
Ken*_*rda 36
您必须使用--proto_path命令行标志(aka -I)来告知protoc在哪里查找.proto文件.如果您不提供路径,则默认情况下它只会搜索当前目录.请参阅文档(在页面末尾的"生成您的类"下)或键入protoc --help.
Chi*_*obe 22
补充一点,如果你是为 .NET 构建和/或你是 Visual Studio,你可以在 .csproj 文件中的 proto 文件定义中添加一个额外的属性来指定 Proto Root,如下所示:
<Protobuf Include="Protos\ProtoFile.proto" GrpcServices="None" ProtoRoot="Protos\" />
Run Code Online (Sandbox Code Playgroud)
这将清除所有导入和相关错误。
| 归档时间: |
|
| 查看次数: |
36473 次 |
| 最近记录: |