Dot*_*tan 5 go protocol-buffers
我有一个名为 myProtos 的库,如下所示
\n\n.\n|-- proto\n|---- hello.proto\n|\n|-- generated\n\xe2\x94\x94---- hello.pb.go\nRun Code Online (Sandbox Code Playgroud)\n\n我有一个外部的 .proto 文件,example.proto应该导入hello.proto
所以文件的顶部看起来像这样:
\n\nsyntax = "proto3";\npackage example;\nimport "path/to/myProtos/proto/hello.proto"\nRun Code Online (Sandbox Code Playgroud)\n\n现在,当我编译时example.proto,出现导入错误example.pb.go因为它有导入行 import "path/to/myProtos/proto/hello.pb.go"
我尝试添加两个导入路径,但收到“导入但未使用错误”。我还尝试进行相对导入并将两个目录作为标志传递给 protoc,这有效,但我需要 go 文件中的导入路径是绝对的。
\n\n我如何告诉 protoc go 文件上的路径不同?
\n\n在这种情况下有更好的“最佳实践”吗?
\nMus*_*Zia -1
package generated;在您的文件内使用hello.proto。
然后,protoc -I proto/ proto/*.proto --go_out=generated会生成一个包名为 的hello.pb.go内部文件夹。generatedgenerated
proto 文件中的包告诉 protobuf 生成器在生成的文件中使用哪个包。
| 归档时间: |
|
| 查看次数: |
10358 次 |
| 最近记录: |