小编com*_*ngr的帖子

Spring Boot Protobuf 找不到类 com.google.protobuf.UnknownFieldSet$Parser 的序列化器

我想将 spring boot 与 protobuf 一起使用。简而言之,我编写了具有以下结构的演示代码;

RestController->获取实体->Postgres DB Repo->实体到protobuf对象->返回protobuf对象

pom 原型依赖;

<dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>3.12.4</version>
    </dependency>
    <dependency>
        <groupId>com.googlecode.protobuf-java-format</groupId>
        <artifactId>protobuf-java-format</artifactId>
        <version>1.4</version>
    </dependency>
    <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java-util</artifactId>
        <version>3.13.0</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

原型文件

syntax = "proto3";

package demo;

option java_package = "demo.model";
option java_outer_classname = "DemoProtos";

message DemoDto {
  int64 id = 1;
  string description = 2;    

}
Run Code Online (Sandbox Code Playgroud)

gen.sh 文件

#!/usr/bin/env bash
    
SRC_DIR=`pwd`
DST_DIR=`pwd`/../src/main/

echo source:            $SRC_DIR
echo destination root:  $DST_DIR


function gen(){
    D=$1
    echo $D
    OUT=$DST_DIR/$D
    mkdir -p $OUT
    sudo protoc -I=$SRC_DIR --${D}_out=$OUT $SRC_DIR/demo.proto
} …
Run Code Online (Sandbox Code Playgroud)

spring protocol-buffers spring-boot protobuf-java

5
推荐指数
1
解决办法
9899
查看次数