В этом ролике создаем проект на Java с использованием gRPC. Конфигурируем gradle-зависимости, а также пишем Protobuf файлы для генерации Java классов.
Код проекта: [ Ссылка ]
gRPC: [ Ссылка ]
Protocol Buffers: [ Ссылка ]
🎓Общие плагины:
id 'org.springframework.boot' version '2.5.2'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id "com.google.protobuf" version "0.8.19"
🎓Переменные и зависимости сервера:
ext {
protobuf_version = '3.21.2'
grpc_version = '1.47.0'
grpc_server_version = '2.13.1.RELEASE'
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation "io.grpc:grpc-netty:${grpc_version}"
implementation("net.devh:grpc-server-spring-boot-starter:${grpc_server_version}") {
exclude group: 'io.grpc', module: 'grpc-netty-shaded'
}
}
🎓Переменные и зависимости клиента:
ext {
protobuf_version = '3.21.2'
grpc_version = '1.47.0'
grpc_client_version = '2.13.1.RELEASE'
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation "io.grpc:grpc-netty:${grpc_version}"
implementation("net.devh:grpc-client-spring-boot-starter:${grpc_client_version}") {
exclude group: 'io.grpc', module: 'grpc-netty-shaded'
}
}
🎓Скрипт Protobuf:
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:${protobuf_version}"
}
plugins {
grpc {
artifact = "io.grpc:protoc-gen-grpc-java:${grpc_version}"
}
}
generateProtoTasks {
all()*.plugins {
grpc {}
}
}
}
Сотрудничество: makeinttechnology@gmail.com
#java #grpc #restapi
![](https://i.ytimg.com/vi/2PinQ9JircM/maxresdefault.jpg)