android gradle groovy DSL vs kot

2023-10-22  本文已影响0人  michael_0x

DSL: Domain Specific Language

因为从groovy DSL迁移到kotlin DSL,发现同一个plugin的ID有多种写法,比如:
Groovy:

plugins {
    id 'kotlin-kapt'
}

而这个插件的官网:https://kotlinlang.org/docs/kapt.html
Groovy:

plugins {
    id "org.jetbrains.kotlin.kapt" version "1.9.10"
}

Kotlin:

plugins {
    kotlin("kapt") version "1.9.10"
}

好奇心使然,使得我要研究下要怎么证明不同的id,实际引用的是同一个plugin呢?

首先,groovy的build.gradle比较好处理:

task showPluginPath {
    doLast {
        project.plugins.each {
            println it.properties
        }
    }
}

加上这段之后,直接就出现调试按钮了:


image.png

断点后就看到了唯一的标识了:


image.png

build.gradle.kts就要更改下android studio的配置:


image.png image.png image.png

配置好就能找到这个task在android studio里面调试了:


image.png

对比两个插件的groupid和artifactid完全一致。

上一篇 下一篇

猜你喜欢

热点阅读