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

Gradle从7.5升级至8.0构建失败:JavaPlugin应用异常

Gradle 8.0升级后JavaPlugin应用失败:JvmPluginsHelper方法签名不匹配的解决办法

问题根源

从错误栈可以明确:nebula的SourceJarPlugin插件在调用Gradle内部API JvmPluginsHelper.configureDocumentationVariantWithArtifact()时,因Gradle 8.0修改了该方法的参数签名,旧版本插件不兼容导致报错,和java-library插件本身无关,是依赖的第三方插件没跟上Gradle版本迭代。

解决步骤

  • 定位项目中的nebula插件
    检查build.gradle或settings.gradle里的nebula插件配置,比如:

    // 插件DSL方式
    plugins {
        id 'nebula.source-jar' version 'x.x.x'
    }
    // 或者旧的apply方式
    apply plugin: 'nebula.source-jar'
    
  • 升级nebula插件到兼容Gradle 8.0的版本
    针对nebula-source-jar插件,需升级到19.0.0及以上版本;如果是使用整套nebula publishing插件,升级到20.0.0及以上版本。修改后的配置示例:

    plugins {
        id 'nebula.source-jar' version '19.0.0'
    }
    
  • 验证修复
    执行./gradlew clean build重新构建,确认错误消失。

替代方案(无法升级插件时)

如果因依赖限制不能升级nebula插件,可以直接用Gradle原生功能替换SourceJarPlugin的作用:

// 移除原来的nebula source-jar插件引用
// apply plugin: 'nebula.source-jar'

// 原生配置实现源码jar生成
java {
    withSourcesJar()
}

// 如果需要发布源码jar,添加以下配置
publishing {
    publications {
        mavenJava(MavenPublication) {
            from components.java
        }
    }
}

这种方式完全兼容Gradle 8.0,无需依赖第三方插件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 01:20:25