无法解析外部依赖 org.springframework.cloud:spring-cloud-starter-netflix-eureka-client 因为没有定义存储库

问题描述

我想编译这个 Gradle 项目:

buildscript {

    repositories {
        mavenCentral()
        maven {
            url 'https://repo.spring.io/milestone'
        }
        maven {
            url "https://maven.springframework.org/release"
        }
    }
}

plugins {
    id 'java'
    id 'io.spring.dependency-management' version '1.0.10.RELEASE'
}

apply plugin: "io.spring.dependency-management"

group 'org.example'
version '1.0.0'

dependencyManagement {
    imports {
        mavenBom 'org.springframework.cloud:spring-cloud-dependencies:2020.0.2'
    }
}

dependencies {

    compile "io.jsonwebtoken:jjwt:0.9.1"
    compile "org.springframework.cloud:spring-cloud-starter-netflix-eureka-client"    
    compile "org.springframework.cloud:spring-cloud-netflix-hystrix"
    compile "org.springframework.cloud:spring-cloud-starter-gateway"
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
}

test {
    useJUnitPlatform()
}

但是当我尝试编译项目时出现错误

Cannot resolve external dependency org.springframework.cloud:spring-cloud-starter-netflix-eureka-client because no repositories are defined.
required by:
    project :

你知道我该如何解决这个问题吗?

解决方法

正如错误所说,您需要定义相应的存储库。由于我在 maven 中使用了 eureka-client .. 我可以向您展示如何定义存储库。

<repositories>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>https://repo.spring.io/milestone</url>
    </repository>
</repositories>

您可以找到在 Gradle 中使用相同内容的正确方法。

,

请尝试 实现 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:3.0.3' 或实现 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client:VERSION_NUMBER'