Gradle 7.0 kts 使用插件maven-publish

升级7.0后许多api都变了,整理了一下kts的配置

build.gradle.kts

plugins {
    id("com.android.library")
    id("kotlin-android")
    `maven-publish`
}

//必须配置main
sourceSets {
    create("main") {
        java.srcDir("src/main/java")
    }
}

//打包源码
val sourcesJar by tasks.registering(Jar::class) {
   //如果没有配置main会报错
    from(sourceSets["main"].allSource)
    archiveClassifier.set("sources")
}

publishing {
    //配置maven仓库
    repositories {
        maven {
            //当前项目根目录
            url = uri("$rootDir/repo")
        }
    }
    publications {
        create<MavenPublication>("mavenJava") {
            artifact(sourcesJar)
            afterEvaluate { artifact(tasks.getByName("bundleReleaseAar")) }
            groupId = "com.xxx"
            artifactId = "widget"
            version = "1.0.0"
        }

    }
}
引用

在项目下的 build.gradle.kts节点下配置maven
如果使用version_catalogs管理依赖的话在setting.gradle.kts添加maven配置

//启用version_catalogs 管理
enableFeaturePreview("VERSION_CATALOGS")

@Suppress("UnstableApiUsage")
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        maven { setUrl("https://maven.aliyun.com/repository/public/") }
        maven { setUrl("https://jitpack.io") }
        mavenCentral()
        maven { setUrl("https://maven.google.com") }
        maven{
            url = uri("$rootDir/repo")
        }
    }
  

app/build.gradle.kts

dependencies {
    //不直接引用module加速编译时间
    //implementation project(path: ":widget")
    implementation("com.xxx:widget:1.0.0")
}



作者:懒人吃货一个
链接:https://www.jianshu.com/p/c12a6ecb951a
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值