在我的 Gradle Kotlin 项目中配置 protobuf 时遇到问题

问题描述

我不知道我在这里做错了什么。我遵循了许多指南,并且始终坚持在我的 gradle kotlin protoc 文件解决 protobuf 插件build.gradle.kts 插件调用问题。

这是我的整个文件

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

buildscript {
    dependencies {
        classpath("com.google.protobuf:protobuf-gradle-plugin:0.8.14")
    }
}

plugins {
    id("com.google.protobuf") version "0.8.14"
    id("org.springframework.boot") version "2.4.1"
    id("io.spring.dependency-management") version "1.0.10.RELEASE"
    kotlin("jvm") version "1.4.21"
    kotlin("plugin.spring") version "1.4.21"
    kotlin("plugin.jpa") version "1.4.21"
}

group = "com.myapp"
version = "0.0.1-SNAPSHOT"
java.sourceCompatibility = JavaVersion.VERSION_15

repositories {
    mavenCentral()
}

dependencies {
    implementation("org.springframework.boot:spring-boot-starter-data-jpa")
    implementation("org.springframework.boot:spring-boot-starter-web")
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")

    // gRPC
    implementation( "io.grpc:grpc-protobuf:3.14.0")

    testImplementation("org.springframework.boot:spring-boot-starter-test")
    testImplementation("io.grpc:grpc-testing")
}

sourceSets {
    main {
        proto {
        }
    }
    test {
        proto {
        }
    }
}

protobuf {
    protoc {
        artifact("com.google.protobuf:protoc:0.8.14")
    }
}

tasks.withType<KotlinCompile> {
    kotlinoptions {
        freeCompilerArgs = listof("-Xjsr305=strict")
        jvmTarget = "15"
    }
}

tasks.withType<Test> {
    useJUnitPlatform()
}

无论我尝试什么

protobuf {
    protoc { // <<<
        artifact("com.google.protobuf:protoc:0.8.14") // <<<
    }
}

此部分无法解析,导致以下错误

> Configure project :
Could not resolve: org.jetbrains.kotlin:kotlin-stdlib:1.4.21
e: /home/xetra11/Development/projects/user-service/build.gradle.kts:52:5: Unresolved reference: protoc
e: /home/xetra11/Development/projects/user-service/build.gradle.kts:53:9: Unresolved reference: artifact

解决方法

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

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

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