windows 下使用 protobuf(转载)
程序员文章站
2022-05-13 20:24:22
...
1、下载protobuf
下载地址:https://github.com/google/protobuf/releases
选择protoc-xxx-win32.zip下载
2、配置环境变量
将解压出来的protoc.exe
放在一全英文路径下,并把其路径名放在windows环境变量下的path
下。
放在系统环境变量下和用户环境变量下都是可以的,这里放在了用户环境变量下。
注:简单粗爆的放在
C:\Windows\System32
下面也是可以运行的。
3、生成代码
在所使用的proto文件路径下打开cmd窗口执行以下命令:
protoc -I=源地址 --java_out=目标地址 源地址/xxx.proto
- 1
此处生成时会以 proto 里面注明的java_package
为路径完整生成,所以目标地址不必包含java_package及之后的路径,比如:option java_package = "com.test.protocol";
,那么就会生成com/test/protocol/XXX.java
参数解释:
-I:主要用于指定待编译的 .proto 消息定义文件所在的目录,即可能出现的包含文件的路径,该选项可以被同时指定多个。此处指定的路径不能为空,如果是当前目录,直接使用.
,如果是子目录,直接使用子目录相对径,如:foo/bar/baz
,如果要编译的文件指定的文件路径为baz/test.proto,那么应这么写-I=foo/bar,而不要一直写到baz。
4、示例
使用的文件:
SubscribeReq.proto(在 D:\test_protoc 下)
syntax = "proto2";
option java_package="com.nio.serlizable";
option java_outer_classname="SubscribeReqProto";
message SubscribeReq{
required int32 subReqId = 1;
required string userName = 2;
required string productName = 3;
repeated string address = 4;
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
生成:
D:\>protoc -I=D:\test_protoc --java_out=D:\test_protoc SubscribeReq.proto
- 1
生成后:
推荐阅读
-
windows环境下使用Composer安装ThinkPHP5
-
python使用wmi模块获取windows下的系统信息 监控系统
-
解析windows下使用命令的方式安装mysql5.7的方法
-
Windows7下Python3.4使用MySQL数据库
-
Windows下Python使用Pandas模块操作Excel文件的教程
-
在windows下使用淘宝的nginx插件 nginx_concat_module (附下载地址)
-
WINDOWS下givm安装使用方法(编译程序)
-
windows10下使用IE浏览器出现报错的解决办法
-
Cwrsync如何使用可以实现Linux与windows下的文件同步详解
-
Windows7下安装使用MySQL8.0.16修改密码、连接Navicat问题