1、首先需要编写自己需要的.proto文件,本文重点不在这里,.proto可以参考grpc官方例子
https://grpc.io/docs/quickstart/java.html
2、创建自己的Java工程(只要是maven工程就行),把.proto文件放到src/main/proto目录下面
3、在项目的pom.xml中加入相关插件的配置内容,可以直接复制grpc官方的,实测很好用
https://github.com/grpc/grpc-java
<build>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId>
<version>1.5.0.Final</version>
</extension>
</extensions>
<plugins>
<plugin>
<groupId>org.xolstice.maven.plugins</groupId>
<artifactId>protobuf-maven-plugin</artifactId>
<version>0.5.1</version>
<configuration>
<protocArtifact>com.google.protobuf:protoc:3.5.1-1:exe:${os.detected.classifier}</protocArtifact>
<pluginId>grpc-java</pluginId>
<pluginArtifact>io.grpc:protoc-gen-grpc-java:1.17.1:exe:${os.detected.classifier}</pluginArtifact>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>compile-custom</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
4、然后在IDE的maven面板上分别点击下面两个任务。点击protobuf:compile生成的5个文件是与protobuf序列化相关的,也就相当于是数据交换时的java bean。点击protobuf:compile-custom生成的1个文件是与grpc相关的,主要用于与服务端通信的。
5、自动生成的代码在target/generated-sources/protobuf里,可以移动到自己项目的相关目录下面。具体使用方法比较简单,可以参看官方的例子。