4

我遇到了一个奇怪的错误,我想nebula.release在 Gradle 中使用插件。我已经成功通过以下两种方式添加它:

plugins {
    id 'nebula.release' version '6.3.5'
}

dependencies {
    classpath 'com.netflix.nebula:nebula-release-plugin:6.3.4'
}
apply plugin: 'nebula.release'

但是,无论如何,当我添加以下类路径行时spring-cloud-contracts

classpath "org.springframework.cloud:spring-cloud-contract-gradle-plugin:2.1.0.RELEASE"

它给了我以下错误:

An exception occurred applying plugin request [id: 'nebula.release', version: '6.3.5']
> Failed to apply plugin [id 'nebula.release']
   > No signature of method: org.eclipse.jgit.internal.storage.file.FileRepository.getRef() is applicable for argument types: (java.lang.String) values: [HEAD]
     Possible solutions: getAt(java.lang.String), getFS(), grep(), exactRef(java.lang.String), findRef(java.lang.String), getAllRefs()

我完全不确定为什么添加这个依赖会破坏这么多东西,任何帮助都会很棒!

4

1 回答 1

0

尝试将您的 Nebula 插件升级到更高版本,例如 15.1.0。

示例项目:https ://github.com/athlan/spring-cloud-contract-nebula-example

详细说明:

Spring Cloud Contract 提供了较新版本的 jgit 库(与您引用的 nebula 版本相比),其中上述方法已被弃用,并且在较新版本中最终被删除。

于 2020-09-08T14:18:57.440 回答