【问题标题】:Inconsistent Gradle Version between grade-wrapper.properties and actual versionGrade-wrapper.properties 和实际版本之间的 Gradle 版本不一致
【发布时间】:2020-11-04 09:44:09
【问题描述】:

这是我的 build.gradle 文件:

plugins {
    id 'org.springframework.boot' version '2.3.4.RELEASE'
    id 'io.spring.dependency-management' version '1.0.10.RELEASE'
    id 'java'
    id 'io.freefair.lombok' version '5.0.1'
}

group = 'TidBiT'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

repositories {
    mavenCentral()
}
dependencies {
    compile "org.springframework.boot:spring-boot-starter-web:2.3.4.RELEASE"
    compile 'org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final'
    compile 'org.springframework.boot:spring-boot-configuration-processor'
    implementation 'org.springframework.boot:spring-boot-starter'
    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    implementation 'org.springframework.boot:spring-boot-starter-actuator'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.boot:spring-boot-starter-validation'
    runtimeOnly 'org.postgresql:postgresql'
    testImplementation('org.springframework.boot:spring-boot-starter-test') {
        exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
    }
}

test {
    useJUnitPlatform()
}

这是我的 gradle-wrapper.properties

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

这是我得到的错误:

* What went wrong:
An exception occurred applying plugin request [id: 'org.springframework.boot', version: '2.3.4.RELEASE']
> Failed to apply plugin [id 'org.springframework.boot']
   > Spring Boot plugin requires Gradle 5 (5.6.x only) or Gradle 6 (6.3 or later). The current version is Gradle 6.2.2

我不是 gradle 方面的专家。大多数时候我只是从网上复制和过去的东西,直到一切正常。但是,在我看来,系统正在检测的 gradle 版本与我想要的在 gradle-wrapper.properties 文件中声明的 gradle 版本之间存在不一致。

有人知道我做错了什么吗?

谢谢

【问题讨论】:

  • 你是否使用 gradle wrapper 启动你的构建? (gradlew / gradlew.bat)?
  • 不,我使用像gradle cleangradle bootRun这样的命令

标签: java spring spring-boot gradle


【解决方案1】:

尝试使用包装器:

./gradlew clean./gradlew bootRun,而不是 gradle cleangradle bootRun

如果您使用 Windows:

gradlew.bat cleangradlew.bat bootRun

如果您没有看到这些文件,请使用gradle wrapper 生成它们


UPD:不同之处在于gradle 使用您安装在机器上的版本。 Wrapper 执行以下步骤:

  1. 使用您在 gradle.properties 中提到的版本下载 gradle 发行版
  2. 只要使用gradlew,就使用下载的分发版。

【讨论】:

  • 你能解释一下有什么区别吗?
  • 用解释更新了我的答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-20
  • 1970-01-01
  • 1970-01-01
  • 2015-03-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多