You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle Kotlin插件发布正确性验证及跨项目应用咨询

问题解答

1. 是否已正确发布插件?

你的发布流程框架没问题,但有一处关键配置需要修正,否则其他项目无法通过plugins块正常识别插件:

  • 当前publishing块中,publication是基于java组件生成的,但Gradle插件项目应当使用gradlePlugin插件自动生成的pluginMaven组件。修改后的配置如下:
publications {
    create<MavenPublication>("myLibrary") {
        from(components["pluginMaven"]) // 替换原有的components["java"]
    }
}
  • 验证发布是否成功的方法:
    • 登录本地Maven仓库后台(http://localhost:8081),进入hellomaven仓库,检查是否存在路径aaa/bbb/com.asd.greeting/1.4
    • 该目录下需包含插件jar包、pom.xml、以及com.asd.greeting-1.4.pom(插件标记 artifact,用于Gradle识别插件ID)

若已发布过旧版本,重新执行./gradlew publish覆盖即可。

2. 如何在其他项目中应用该插件?

不需要添加implementation依赖,正确配置步骤如下:

步骤1:配置插件仓库(核心)

因为插件发布在私有Maven仓库,Gradle需要知道插件ID对应的标记 artifact 位置,推荐在项目根目录的settings.gradle.kts中全局配置:

pluginManagement {
    repositories {
        mavenCentral()
        maven {
            credentials {
                username = "admin"
                password = "123456"
            }
            url = uri("http://localhost:8081/repository/hellomaven/")
            isAllowInsecureProtocol = true
        }
    }
}

步骤2:在build.gradle.kts中应用插件

插件ID就是你在插件项目里定义的com.asd.greeting,直接在plugins块中引入:

plugins {
    kotlin("jvm") version "1.9.0"
    id("com.asd.greeting") version "1.4"
}

// 无需保留implementation("aaa.bbb:plugin:1.4"),插件依赖会由Gradle自动处理

验证插件生效

执行./gradlew tasks,若能看到greeting任务则说明插件已成功应用;执行./gradlew greeting,会打印出Hello from plugin 'com.asd.greeting'。

内容的提问来源于stack exchange,提问作者Xixiaxixi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 17:42:41