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

如何使用发布在GitHub Packages上的自建Gradle插件?

解决GitHub Packages上Gradle插件无法找到的问题
  • 确认GitHub Packages仓库URL正确
    把url = "https://maven.pkg.github.com/..."里的...替换成你的GitHub用户名/组织名加插件仓库名,格式必须是https://maven.pkg.github.com/OWNER/REPO,比如你的插件在用户my-github-name的my-plugin-repo仓库下,URL要写成https://maven.pkg.github.com/my-github-name/my-plugin-repo。

  • 核对插件ID与发布配置完全一致
    发布插件时,你得在build.gradle(或build.gradle.kts)里用gradlePlugin块声明插件ID,示例代码:

    gradlePlugin {
        plugins {
            myPlugin {
                id = 'my-plugin' // 这里的ID必须和你项目中引用的完全匹配,大小写、符号都不能错
                implementationClass = 'com.example.MyPlugin'
            }
        }
    }
    

    检查发布时填的ID是不是和你用的my-plugin一模一样。

  • 验证凭证权限
    确保你用的GitHub个人访问令牌(就是配置里的password)有read:packages权限。如果是组织仓库,还要确认你的账号能访问该组织的Packages。另外用户名是你的GitHub账号名,别填错。

  • 检查插件版本是否准确
    登录GitHub Packages页面,确认你发布的插件版本确实是0.0.1,有没有多写前缀(比如写成v0.0.1)或者拼写错误。

  • 调整仓库顺序(可选)
    可以把GitHubPackages仓库移到gradlePluginPortal()前面,避免Gradle优先去官方仓库找不存在的插件,调整后的配置:

    pluginManagement {
        repositories {
            maven { url 'https://repo.spring.io/milestone' }
            maven { url 'https://repo.spring.io/snapshot' }
            maven {
                name = "GitHubPackages"
                url = "https://maven.pkg.github.com/OWNER/REPO"
                credentials {
                    username = "你的GitHub用户名"
                    password = "带read:packages权限的个人访问令牌"
                }
            }
            gradlePluginPortal()
        }
    }
    
  • 确认插件是按Gradle插件格式发布的
    得用Gradle的maven-publish插件配合gradlePlugin块发布,这样才会生成Gradle能识别的插件元数据。如果只是传了普通JAR包,Gradle没法通过插件ID找到它,得直接引用依赖才行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 09:25:21