无法在intelliJ中解析EnableEurekaServer的符号。是的我有依赖/无效+重启我的IDE)

时间:2018-03-16 19:55:15

标签: spring gradle intellij-idea netflix-eureka

我是Java的初学者,如果我不理解某些单词,请提前抱歉。

我一直有错误:无法解析符号@EnableEurekaServer ...当我手动输入eureka服务器的导入行时,单词" cloud"在以下位置突出显示为红色:

import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

在我的build.gradle文件中,我有

compile('org.springframework.cloud:spring-cloud-netflix-eureka-server')

为什么会发生这种情况......一切看起来都应该有效。如果被问到,我可以提供截图!

我的build.gradle文件如下所示:

buildscript {
    ext {
        springBootVersion = '2.0.0.RELEASE'
    }
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile('org.springframework.cloud:spring-cloud-netflix-eureka-server')
    compile('org.springframework.boot:spring-boot-starter-web')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

我的EurekaApplicationServer.java看起来像这样:

package com.example.eurekaserver;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
public class EurekaApplicationServer {

    public static void main(String[] args) {
        SpringApplication.run(EurekaApplicationServer.class, args);
    }

}

picture of err

3 个答案:

答案 0 :(得分:1)

使用特定版本的依赖关系,撰写本文时的当前版本为:

compile('org.springframework.cloud:spring-cloud-netflix-eureka-server:1.4.3.RELEASE')

您可以找到最新的版本号here

对于Spring Boot项目,如果不指定依赖项版本,则使用特殊的dependency management插件。由于某种原因,它无法提供此特定依赖项的版本。请参阅related question

答案 1 :(得分:0)

无需降低eureka-server / client的版本。 原因是Maven仓库无法解析最新版本的eureka服务器。要解决此问题,请将存储库添加到pom / gradle文件中。

from itertools import zip_longest

item1 = [0,1]
item3 = [2,3]
item2 = [4,5,6]
list1 = list(zip_longest(item1, item2, item3))

[(0, 4, 2), (1, 5, 3), (None, 6, None)]

repositories {
    maven {
        url 'https://repo.spring.io/libs-milestone'
    }
}

答案 2 :(得分:0)

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-netflix-eureka-server</artifactId>
    <version>1.1.6.RELEASE</version>
</dependency>

对我有用。