- N +

maven插件编译proto文件(Java篇)

maven插件编译proto文件(Java篇)原标题:maven插件编译proto文件(Java篇)

导读:

Idea+protobuf-maven-plugin插件编译proto文件,自动生成客户端和服务端代码首先,定义test.proto文件,官网样例如下syntax?=...

文章目录 [+]

Idea+protobuf-maven-plugin插件编译proto文件,自动生成客户端和服务端代码

首先,定义test.proto文件,官网样例如下

syntax?=?"proto3";//请在非空非注释的第一行指定当前文件使用的是proto3的语法,默认proto2package?grpc;//package与java_package有些不同,java_package是定义编译生成的java文件所在的目录,而package是对应的java类的命名空间option?java_package?=?"com.diy.vcp.grpc.core";
option?java_outer_classname?=?"HelloWorldServiceProto";//要生成Java类的名称option?java_multiple_files?=?true;//编译后会生成多个Message类,并没有被包含在HelloWorldServiceProto.java文件中,反之,生成单一HelloWorldServiceProto.java文件//服务端接口类service?Greeter?{??rpc?SayHello?(HelloRequest)?returns?(HelloReply)?{}?//服务端接口方法}//请求参数?基于序号的协议字段映射,所以字段可以乱序,可缺段message?HelloRequest?{??string?name?=?1;??string?sex?=?2;
}//响应参数message?HelloReply?{??string?message?=?1;
}

然后,准备好maven工程mock-grpc,pom.xml添加编译proto文件的插件protobuf-maven-plugin



????????
????????????
????????????????kr.motd.maven
????????????????os-maven-plugin
????????????????1.5.0.Final
????????????
????????
????????
????????????
????????????
????????????????org.xolstice.maven.plugins
????????????????protobuf-maven-plugin
????????????????0.5.1
????????????????
????????????????????com.google.protobuf:protoc:3.5.1-1:exe:${os.detected.classifier}
????????????????????grpc-java
????????????????????io.grpc:protoc-gen-grpc-java:1.14.0:exe:${os.detected.classifier}
????????????????
????????????????
????????????????????
????????????????????????
????????????????????????????compile
????????????????????????????compile-custom
????????????????????????
????????????????????
????????????????
????????????
????????
????

最后,可以在maven projects视图中选择 protobuf:compile命令执行

protobuf:compile //编译消息对象
protobuf:compile-custom //依赖消息对象,生成接口服务

也可以使用通过终端Terminal执行mvn命令,但是必须提前安装好protoc.exe

亚博体育官网人生赢家亚博体育PC版亚博体育app无法提现mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=3.0.0 -Dclassifier=windows-x86_64} -Dpackaging=exe -Dfile=D:\protobuf\protoc.exe

mvn protobuf:compile
mvn protobuf:compile-custom

附工程目录结构





本文标题:maven插件编译proto文件(Java篇)
本文链接:http://www.kyjszj.com/htzq/351.html
作者授权:除特别说明外,本文由?开源技术之家?原创编译并授权?开源技术之家?刊载发布。
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。

有好的文章希望我们帮助分享和推广,猛戳这里我要投稿

返回列表
上一篇:
下一篇:

发表评论中国互联网举报中心

快捷回复:

    评论列表 (暂无评论,共336人参与)参与讨论

    还没有评论,来说两句吧...