首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在编写自定义kotlin-dsl时忽略显式导入类(如gradle kotlin脚本)

如何在编写自定义kotlin-dsl时忽略显式导入类(如gradle kotlin脚本)
EN

Stack Overflow用户
提问于 2018-11-27 08:18:10
回答 1查看 735关注 0票数 1

在gradle的kotlin构建脚本中,我们不需要在构建脚本build.gradle.kts.中显式导入类或函数,比如pluginsrepositoriesdependencies

代码语言:javascript
复制
plugins {
    val kotlinVersion = "1.3.10"
    val springBootVersion = "2.1.0.RELEASE"
    val detektVersion = "1.0.0-RC10"

    id("org.springframework.boot") version springBootVersion
    id("org.jetbrains.kotlin.jvm") version kotlinVersion
    id("org.jetbrains.kotlin.plugin.spring") version kotlinVersion
    id("io.spring.dependency-management") version "1.0.6.RELEASE"
    id("io.gitlab.arturbosch.detekt") version detektVersion
}


repositories {
    mavenLocal()

    mavenCentral()
    maven(url = uri("https://dl.bintray.com/s1m0nw1/KtsRunner"))
}

dependencies {
    implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    implementation("org.jetbrains.kotlin:kotlin-script-runtime")
    implementation("org.jetbrains.kotlin:kotlin-compiler-embeddable")
    implementation("org.jetbrains.kotlin:kotlin-script-util")

    implementation("org.springframework.boot:spring-boot-starter-webflux")
    implementation("org.springframework.boot:spring-boot-starter-actuator")
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
    implementation("cn.pilipa:pilipa-spring-boot-starter-logging:2.0.10")

    implementation("de.swirtz:ktsRunner:0.0.5")

    testImplementation("org.springframework.boot:spring-boot-starter-test"){
        exclude(module = "junit")
    }
    testImplementation("io.projectreactor:reactor-test")
    testImplementation("org.springframework.cloud:spring-cloud-stream-test-support")
    testImplementation("org.junit.jupiter:junit-jupiter-api")
    testRuntime("org.junit.jupiter:junit-jupiter-engine")
    testCompile("io.kotlintest:kotlintest-runner-junit5:${kotlinTestVersion}")
    testCompile("io.kotlintest:kotlintest-extensions-spring:${kotlinTestVersion}")

    detektPlugins("io.gitlab.arturbosch.detekt:detekt-formatting:${detektVersion}")
}

如何在自定义kotlin脚本中实现这个类似的特性,以隐式导入kotlin脚本中的类?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-27 13:54:47

Gradle定义了一个隐式导入列表,该列表没有扩展此列表的机制。这与build.gradle和Groovy版本一样,也适用于Kotlin版本。

另见:分级插件中的自动导入

直到今天都是如此。Kotlin Gradle脚本源代码 (2018年11月22日的主分支)中还有一个TODO与此相关:

// TODO:让它由:plugins提供

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53495350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档