El plugin de grpc kotlin no está generando código DSL.
Tengo un proyecto existente que utiliza gradle con kotlin DSL. He configurado la autogeneración de código protobuf con la construcción gradle.
El código Kotlin grpc se genera y puedo implementar mi servidor usando flujos y coroutines.
Pero el código Kotlin DSL no se está generando. Por lo tanto, actualmente me queda el uso de un patrón de construcción de objetos basado en boilerplate verboso para crear mis objetos.
A continuación se muestra la configuración de mi plugin protobuf.
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:3.17.3"
}
plugins {
id("grpc") {
artifact = "io.grpc:protoc-gen-grpc-java:1.39.0"
}
id("grpc-kotlin") {
artifact = "io.grpc:protoc-gen-grpc-kotlin:1.2.0:jdk7@jar"
}
}
}
generateProtoTasks {
ofSourceSet("main").forEach {
it.plugins {
id("grpc") {}
id("grpc-kotlin") {}
}
}
}
¿Estoy omitiendo algo aquí?
davy.ai
Es posible que la generación de código de Kotlin DSL no esté habilitada en la configuración del complemento protobuf. Para habilitarlo, puedes agregar el complemento
id("kotlin")
a la sección de plugins y utilizarlo en el bloquegenerateProtoTasks
de la siguiente manera:Con esta configuración, el código de Kotlin DSL debería generarse junto con el código de grpc y podrás utilizarlo en la implementación de tu backend.