1.IDEA 下protobuf 使用(Java)

2020-06-07  本文已影响0人  chachacha88

1.环境

版本: spring boot 2.2.5.RELEASE
语言:Java

2.安装IDEA插件

Protobuf Support | GoogleProtobufTool

Protobuf Support
GoogleProtobufTool

3.配置pom文件

protobuf-java

<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java</artifactId>
  <version>3.12.2</version>
 </dependency>

grpc

<dependency>
  <groupId>io.grpc</groupId>
  <artifactId>grpc-netty</artifactId>
  <version>1.29.0</version>
</dependency>
<dependency>
  <groupId>io.grpc</groupId>
  <artifactId>grpc-protobuf</artifactId>
   <version>1.29.0</version>
 </dependency>
 <dependency>
   <groupId>io.grpc</groupId>
   <artifactId>grpc-stub</artifactId>
   <version>1.29.0</version>
</dependency>

4.生成Java

插件配置

pom设置

<build>
  <extensions>
    <extension>
        <groupId>kr.motd.maven</groupId>
        <artifactId>os-maven-plugin</artifactId>
        <version>1.4.1.Final</version>
     </extension>
  </extensions>
  <plugins>
    <plugin>
        <groupId>org.xolstice.maven.plugins</groupId>
        <artifactId>protobuf-maven-plugin</artifactId>
        <version>0.5.0</version>
        <configuration>
            <protocArtifact>
                com.google.protobuf:protoc:3.1.0:exe:${os.detected.classifier}
            </protocArtifact>
            <pluginId>grpc-java</pluginId>
            <pluginArtifact>
                io.grpc:protoc-gen-grpc-java:${grpc.version}:exe:${os.detected.classifier}
            </pluginArtifact>
        </configuration>
        <executions>
            <execution>
                <goals>
                    <goal>compile</goal>
                    <goal>compile-custom</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
  </plugins
</build>

proto代码

syntax = "proto3";
option java_outer_classname = "UserModel";

message User{
     int32 id = 1;
     string name = 2;
     string sex= 3;
}
上一篇 下一篇

猜你喜欢

热点阅读