go protobuff

悠米海 · · 1846 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Go使用ProtoBuff

发现Google Code上面有针对Go语言的Protobuff实现

code.google.com/p/goprotobuf

下面说下安装过程:

go get code.google.com/p/goprotobuf

之后提示no Go source files

执行

go install code.google.com/p/goprotobuf/proto

在Go的安装目录pkg下产生对应路径的proto.a文件

执行

go install code.google.com/p/goprotobuf/protoc-gen-go

在Go的安装目录pkg下产生对应路径的protoc-gen-go文件夹
 

在Go的bin目录产生protoc-gen-go.exe,使用google protobuf编译产生的protoc程序,将protoc.exe和protoc-gen-go.exe拷贝至同一目录

执行 protoc --plugin=protoc-gen-go=protoc-gen-go.exe --go_out=./ xx.proto

参考:

http://www.cnblogs.com/zhangqingping/archive/2012/10/28/2743274.html
 

ps:之前一直是linux可以正确执行,windows不可以,原因是linux不需要添加--plugin=protoc-gen-go=protoc-gen-go.exe选项指定插件的路径

经测试,protobuf 2.3和2.4是兼容protoc-gen-go的

贴一个批处理:protogo.bat

@echo off
if not exist %1 goto :Use
if not exist %2 goto :Use
if not exist %3 goto :Use

%GOROOT%\bin\protoc.exe  --plugin=protoc-gen-go=%GOROOT%\bin\protoc-gen-go.exe --go_out=%1 --proto_path=%2 %3
goto :End

:Use
echo use: 1、go-out-dir 2、proto-dir 3、proto-file

:End


本文来自:开源中国博客

感谢作者:悠米海

查看原文:go protobuff

1846 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传