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

如何在Gradle 8中使用GitHub上的最新gradle-ospackage-plugin

解决Gradle 8中引入GitHub上nebula.ospackage插件的问题

nebula.ospackage 11.0.0版本尚未同步到Gradle官方插件门户,因此直接用plugins块引入会失败。以下两种方式可实现从GitHub仓库引入该插件:

方式一:使用buildscript块手动引入

在项目根目录的build.gradle中添加如下配置:

buildscript {
    repositories {
        // 配置GitHub Packages仓库
        maven {
            url = uri("https://maven.pkg.github.com/nebula-plugins/gradle-ospackage-plugin")
            credentials {
                // 从环境变量或项目属性读取GitHub凭证
                username = project.findProperty("gpr.user") ?: System.getenv("GITHUB_ACTOR")
                password = project.findProperty("gpr.key") ?: System.getenv("GITHUB_TOKEN")
            }
        }
    }
    dependencies {
        // 引入插件的类路径依赖
        classpath "com.netflix.nebula:gradle-ospackage-plugin:11.0.0"
    }
}

// 应用插件
apply plugin: "nebula.ospackage"

注意事项

  • 需要生成GitHub个人访问令牌(PAT),并赋予read:packages权限,用于访问GitHub Packages仓库
  • 可将凭证信息通过环境变量GITHUB_ACTOR(GitHub用户名)和GITHUB_TOKEN(生成的PAT)传入,或在gradle.properties中配置gpr.user和gpr.key

方式二:使用plugins块配合pluginManagement配置

在项目根目录的settings.gradle中添加插件仓库和解析策略:

pluginManagement {
    repositories {
        gradlePluginPortal() // 保留官方插件门户
        maven {
            url = uri("https://maven.pkg.github.com/nebula-plugins/gradle-ospackage-plugin")
            credentials {
                username = System.getenv("GITHUB_ACTOR")
                password = System.getenv("GITHUB_TOKEN")
            }
        }
    }
    resolutionStrategy {
        eachPlugin {
            // 指定nebula.ospackage插件的实际模块坐标
            if (requested.id.id == "nebula.ospackage") {
                useModule("com.netflix.nebula:gradle-ospackage-plugin:${requested.version}")
            }
        }
    }
}

之后在build.gradle中仍可使用原有的plugins块:

plugins {
    id "nebula.ospackage" version "11.0.0"
}

核心原因说明

Gradle插件门户中的插件依赖于「插件标记工件(plugin marker artifact)」,而nebula.ospackage 11.0.0的标记工件尚未发布到官方门户。通过上述配置,我们直接指定插件的实际模块坐标,并从GitHub Packages仓库拉取插件内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 05:22:38