【问题标题】:How I can fix this error; java.lang.ClassNotFoundException: org.gradle.api.internal.plugins.DefaultConvention我该如何解决这个错误; java.lang.ClassNotFoundException:org.gradle.api.internal.plugins.DefaultConvention
【发布时间】:2020-04-17 22:21:33
【问题描述】:

当我想构建 Gradle 时,出现以下错误。

你能帮帮我吗?

非常感谢。

java.lang.NoClassDefFoundError: org/gradle/api/internal/plugins/DefaultConvention 在 org.jetbrains.plugins.gradle.tooling.builder.ProjectExtensionsDataBuilderImpl.buildAll(ProjectExtensionsDataBuilderImpl.groovy:50) ... 122 更多

我的 Gradle 最新版本是 6.0.1。

另外,我发布到 Github。你可以在那里找到错误的完整细节和我的 Gradle 代码; https://github.com/gradle/gradle/issues/11769

【问题讨论】:

    标签: spring-boot gradle intellij-idea


    【解决方案1】:

    您的某个插件(某种 jetbrains 插件)似乎与 Gradle 6 不兼容。我猜您可以通过任一方式解决此问题

    • 使用旧版本的 Gradle
    • 升级到支持 Gradle 6 的较新版本的插件

    jetbrains 插件似乎在“内部”包中引用 Gradle 类。这些类不是公共 API 的一部分,可以在 Gradle 版本之间更改(或删除),恕不另行通知,因此会出现 NoClassDefFoundError。理想情况下,插件应该只引用公共 API

    【讨论】:

    • 将 Intellj 升级到最新版本并解决了该问题。感谢您的提示
    【解决方案2】:

    对于我的想法 2018.2 帮助不使用内置的 gradle 包装器,而是安装 gradle 5.6.4(具有该 org/gradle/api/internal/plugins/DefaultConvention)并在导入项目时指定该 gradle 的主目录到想法。

    【讨论】:

      【解决方案3】:

      在 IntelliJ Idea(左侧面板)的项目目录下,转到: gradle -> 包装器 -> gradle-wrapper.properties 如下更新distributionUrl。 (这里的 gradle 版本是 5.6) distributionUrl=https://services.gradle.org/distributions/gradle-5.6-bin.zip

      【讨论】:

        猜你喜欢
        • 2016-07-21
        • 2016-09-09
        • 2015-02-28
        • 2013-08-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多