Micronaut kotlin grpc 复制原型

问题描述

我有一个包含 2 个项目的多模块 Gradle 项目:auth-service、user-service。 每个项目都有一个 proto 文件夹,proto 文件所在的位置。

auth-service 需要用户服务存根,但是当我编译代码时,它抛出以下错误

Execution Failed for task ':auth-service:extractIncludeProto'.
> Entry userService.proto is a duplicate but no duplicate handling strategy has been set. Please refer to https://docs.gradle.org/7.0/dsl/org.gradle.api.file.copySpec.html#org.gradle.api.file.copySpec:duplicatesstrategy for details.

每个项目都有一个 build.gradle.kts,其中包含以下内容生成代码

sourceSets {
    main {
        java {
            srcDirs("build/generated/source/proto/main/grpc")
            srcDirs("build/generated/source/proto/main/grpckt")
            srcDirs("build/generated/source/proto/main/java")
        }
    }
}

protobuf {
    protoc {
        artifact = "com.google.protobuf:protoc:3.15.6"
    }
    plugins {
        id("grpc") {
            artifact = "io.grpc:protoc-gen-grpc-java:1.36.1"
        }

        id("grpckt") {
            artifact = "io.grpc:protoc-gen-grpc-kotlin:1.0.0:jdk7@jar"
        }
    }
    generateProtoTasks {
        ofSourceSet("main").forEach {
            it.plugins {
                id("grpc")
                id("grpckt")
            }
        }
    }
}

我怎样才能解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)