使用Go工具进行Protobuf编译



有没有一种好的方法可以将protobuf编译与go build命令集成?

goprotobuf"以库和协议编译器插件的形式为谷歌的协议缓冲区提供Go支持"。

goprotobuf库中的README提供了一些不错的信息。

发件人https://code.google.com/p/goprotobuf/source/browse/README#106:

考虑包含的test.proto文件

    package example;
    enum FOO { X = 17; };
    message Test {
      required string label = 1;
      optional int32 type = 2 [default=77];
      repeated int64 reps = 3;
      optional group OptionalGroup = 4 {
        required string RequiredField = 5;
      }
    }

要从test.proto和其他一些Go文件构建一个包,请编写如下Makefile:

    include $(GOROOT)/src/Make.$(GOARCH)
    TARG=path/to/example
    GOFILES=
        test.pb.go
        other.go
    include $(GOROOT)/src/Make.pkg
    include $(GOROOT)/src/pkg/code.google.com/p/goprotobuf/Make.protobuf

最新更新