在java 工程中配置grpc,查看了一下网上的资料,发现很多博客方法是没有办法配置成功的,原因有几点:1.原本的配置就缺少一下关键的代码。2.在配置中,没有说清楚操作步骤,导致配置无法进行下去。现总结一下需要注意的地方,请配合一些网上资料一起使用,虽然简单,但还是需要记录一下的。
一。首先建立一个maven工程.
二。新建test.proto文件:内容如下:
syntax = "proto3";
package grpc;
option java_package = "com.mingluck.grpc";
option java_outer_classname = "HelloWorldServiceProto";
option java_multiple_files = true;
//服务端接口类
service Greeter {
//服务端接口方法
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
//请求参数
message HelloRequest {
string name = 1;
string sex = 2;
}
//响应参数
message HelloReply {
string message = 1;
}
三,新建在pom.xml文件中加入:
依赖和插件:
<dependencies>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-all</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.4.2</version>
</dependency>
</dependencies>
<build>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId>
<version>1.4.1.Final</version>
</extension>
</extensions>
<!-- protobuf -->
<plugin>
<groupId>org.xolstice.maven.plugins</groupId>
<artifactId>protobuf-maven-plugin</artifactId>
<version>0.5.0</version>
<configuration>
<protocArtifact>com.google.protobuf:protoc:3.0.0-beta-2:exe:${os.detected.classifier}</protocArtifact>
<pluginId>grpc-java</pluginId>
<pluginArtifact>io.grpc:protoc-gen-grpc-java:0.14.0:exe:${os.detected.classifier}</pluginArtifact>
<protoSourceRoot>src/main/resources/proto</protoSourceRoot>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>compile-custom</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
这里特别要注意
1。红色加粗字段,一定要填写自己新建的proto文件所在的目录。
2。新建完成之后,使用maven install构建,在去写服务端和客户端代码。否则有可能生成不了GreeterGrpc文件。
四,新建服务端和客户端代码请参考网上博客,基本一样,根据自己需求修改即可。