Gradle升级问题:java.lang.IllegalArgumentException: Version must



我们在从gradle 5.6升级到gradle 7.2时遇到了问题。

我们有一个简单的spring启动项目(sub1)和一个内部spring库项目(sub2),而sub2是gradle spring库,它依赖于sub1。两个项目都使用相同的gradle和spring启动版本。

我们也在尝试升级spring cloud到最新版本,这需要gradle升级和spring boot升级。当前版本如下

  1. gradle - 7.2
  2. 弹簧- 2.5.2
  3. swagger - 2.9.2

当我尝试点击swagger url时出现以下错误

java.lang.IllegalArgumentException: Version must not be null o empty

Spring启动横幅是空白的,不显示版本。我们怀疑这就是问题所在。

Swagger主页显示如下错误:

Failed to load API definition

Gradle文件:

repositories {
jcenter()
}
dependencies {
classpath 'org.jfrog.buildinfo:build-info-extractor-gradle:4+'
}
}
plugins {
id "org.sonarqube" version "2.8"
id "com.gorylenko.gradle-git-properties" version "2.2.2"
}
apply plugin: 'java'
apply plugin: 'idea'
apply plugin: 'eclipse'
apply plugin: 'com.jfrog.artifactory'
apply plugin: 'maven-publish'
apply plugin: "jacoco"
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
configurations {
implementation.canBeResolved = true
}
jar {
archiveVersion = "${project.findProperty('APP_VERSION') ?: 'MANUAL_BUILD'}"
dependsOn configurations.runtimeClasspath
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
from {
(configurations.runtimeClasspath-configuration.implementation).collect {
it.isDirectory() ? it : zipTree(it)
}
}
}
dependencies {
implementation('org.springframework:spring-webmvc:5.3.8')
implementation('org.apache.tomcat.embed:tomcat-embed-core:9.0.33')
implementation('org.aspectj:aspectjrt:1.9.5')
}

请帮助我们理解这个问题。

添加了一些新功能,也删除了gradle5X的一些功能,因此,请再次浏览文档并尝试添加以下依赖项,这些依赖项可能对您的API有所帮助。

dependencies {
// Ensure you use the Groovy 3.x variant
testImplementation('org.spockframework:spock-core:2.0-groovy-3.0') {
exclude group: 'org.codehaus.groovy'
}
testImplementation('org.junit.jupiter:junit-jupiter-api')

}

// Spock 2 is based on JUnit Platform and needs to be enabled explicitly.
tasks.withType(Test).configureEach {
useJUnitPlatform()
}

同样,通过这一次获得更详细的https://docs.gradle.org/current/userguide/upgrading_version_6.html