Не могу унаследовать класс сервиса от ServiceGrpc

Помогите, пытаюсь разобраться в gRPC. До этого его не трогал никогда, как и gradle. Я создал модель

import java.util.UUID;
import jakarta.persistence.*;
import lombok.Data;
import lombok.RequiredArgsConstructor;

@Entity
@Data
@RequiredArgsConstructor
@Table(name = "books")
public class Book {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private UUID id;
    private String title;
    private String author;
    private String isbn;
    private Integer quantity;
}

Далее создал файл bookstore.proto

syntax = "proto3";

package com.example.bookstore;
option java_package = "com.example.bookstore.proto";
option java_outer_classname = "BookstoreProto";

message Book {
  string id = 1;
  string title = 2;
  string author = 3;
  string isbn = 4;
  int32 quantity = 5;
}

message GetBookRequest {
  string id = 1;
}

message DeleteBookRequest {
  string id = 1;
}

service BookstoreService {
  rpc AddBook(Book) returns (Book);
  rpc GetBook(GetBookRequest) returns (Book);
  rpc UpdateBook(Book) returns (Book);
  rpc DeleteBook(DeleteBookRequest) returns (Book);
}

И командой ./gradlew generateProto сгенерировал два класса build/generated/source/proto/main/grpc/com/example/bookstore/BookstoreServiceGrpc.java и build/generated/source/proto/main/java/com/example/bookstore/Bookstore.java

А теперь когда я пытаюсь создать свой BookstoreServiceImpl и унаследовать его от BookstoreServiceGrpc.BookstoreServiceImplBase Компилятор просто отказывается его находить и просто подсвечивает красным. Импорт com.example.bookstore.proto.BookstoreServiceGrpc тоже не видит и на уровне .proto. тоже отмечает красным.

На всякий случай вот мой gradle файл

plugins {
    id 'java'
    id 'org.springframework.boot' version '3.2.4'
    id 'io.spring.dependency-management' version '1.1.4'
    id 'com.google.protobuf' version '0.8.16'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'

java {
    sourceCompatibility = '17'
}

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'com.consol.citrus:citrus-bom:3.4.0'
    implementation 'org.mapstruct:mapstruct:1.5.5.Final'
    annotationProcessor ("org.mapstruct:mapstruct-processor:1.5.5.Final")
    compileOnly 'org.projectlombok:lombok:0.11.0'
    compileOnly 'org.projectlombok:lombok'
    runtimeOnly 'org.postgresql:postgresql'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'org.springframework.boot:spring-boot-testcontainers'
    testImplementation 'org.testcontainers:junit-jupiter'
    testImplementation 'org.testcontainers:postgresql'
    implementation 'io.grpc:grpc-netty:1.42.1'
    implementation 'io.grpc:grpc-protobuf:1.42.1'
    implementation 'io.grpc:grpc-stub:1.42.1'
    implementation 'com.google.protobuf:protobuf-java:3.18.1'
}

tasks.named('test') {
    useJUnitPlatform()
}

protobuf {
    protoc {
        artifact = 'com.google.protobuf:protoc:3.18.1'
    }
    plugins {
        grpc {
            artifact = 'io.grpc:protoc-gen-grpc-java:1.42.1'
        }
    }
    generateProtoTasks {
        all()*.plugins {
            grpc {}
        }
    }
}

Ответы (0 шт):