首页 > 解决方案 > Gradle 测试因没有版本的依赖而失败

问题描述

我有一个使用 JMockit 进行测试的 Spring Boot 应用程序,从最近的更改来看,JMockit 在运行时需要将路径传递给 jar。当我这样做时gradle test,它在没有严格提及版本的情况下依赖失败

plugins {
    id 'org.springframework.boot' version '2.4.2'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
}
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
configurations {
    compileOnly {
        extendsFrom annotationProcessor
    }
}
repositories {
    mavenCentral()
    maven { url 'https://repo.spring.io/milestone' }
}
ext {
    set('springCloudVersion', "2020.0.0")
}
dependencies {
    implementation 'org.springframework.cloud:spring-cloud-starter-openfeign'
    compileOnly 'org.projectlombok:lombok'
    developmentOnly 'org.springframework.boot:spring-boot-devtools'
    annotationProcessor 'org.projectlombok:lombok'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'org.jmockit:jmockit:1.49'
}
test {
    jvmArgs += ["-javaagent:${classpath.find { file -> file.name.contains("jmockit") }.absolutePatha}"]
    systemProperties System.properties
}
dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
    }
}

我收到的错误:

A problem occurred evaluating root project 'demo'.
> Could not resolve all files for configuration ':testRuntimeClasspath'.
   > Could not find org.springframework.cloud:spring-cloud-starter-openfeign:.
     Required by:
         project :

我该如何解决?

标签: spring-bootgradle

解决方案


repo.spring.io 不到一周前就关闭了。您需要使用另一个 Maven 存储库。

https://spring.io/blog/2020/10/29/notice-of-permissions-changes-to-repo-spring-io-fall-and-winter-2020


推荐阅读