protoc 批量生成java代码

本文介绍了如何使用Protocol Buffers(protobuf)批量生成Java代码。首先,Protocol Buffers是谷歌用于数据编码的高效格式,适用于RPC协议和文件格式。在Windows上,需要下载protoc.exe并添加到环境变量。接着,编写bat批处理文件,设置协议文件路径、引用文件夹、Java编译器路径和目标生成路径,并删除旧的Java文件。最后,通过protoc命令遍历.proto文件,生成Java代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1)Protocol buffers简介
Protocol Buffers的是一个高效且可扩展的格式结构化数据编码的一种方式。
谷歌使用了Protocol Buffers的几乎所有它的内部RPC协议和文件格式
使用protobuf传输的好处有:二进制传输,安全、数据量小
.proto文件中我们服务器定义需要传输的数据,及数据类型等。而传输的时候则是使用了通过官方工具生成的具体为.java的消息体。

在windwos上java工程引用proto时,需要先下载个protoc.exe的工具,转换为java代码才可以使用。

下载地址
https://github.com/google/protobuf/releases

解压后放在本地磁盘,将目录添加到环境变量中的path变量中。

2)编写bat文件,内容如下:

 @echo off


::协议文件路径, 最后不要跟“\”符号
set SOURCE_FOLDER=D:\fabric\fabric-sdk-java\src\main\proto\msp
::如果文件中引用了别的proto文件, IMP_ FOLDER是引用的proto文件的目录
set IMP_ FOLDER=D:\fabric\fabric-sdk-java\src\main\proto
::Java编译器路径
set JAVA_COMPILER_PATH=D:\fabric\protoc-3.0.0-win32\bin\protoc.exe
::Java文件生成路径, 最后不要跟“\”符号
set JAVA_TARGET_PATH=D:\fabric\bb


::删除之前创建的文件
del %JAVA_TARGET_PATH%\*.* /f /s /q


::遍历所有文件
for /f "delims=" %%i in ('dir /b "%SOURCE_FOLDER%\*.proto"') do (
    
    echo %JAVA_COMPILER_PATH% -I=%SOURCE_FOLDER%  --java_out=%JAVA_TARGET_PATH% %SOURCE_FOLDER%\%%i
    %JAVA_COMPILER_PATH% --proto_path=% IMP_ FOLDER%  --java_out=%JAVA_TARGET_PATH% %SOURCE_FOLDER%\%%i
    
)


echo 协议生成完毕。


pause


3)protoc命令解释
protoc --proto_path=引用的proto文件所在的文件夹   --java_out=指定生成的java文件的目录 proto源文件的路径





评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值