Невозможно разрешить символ «EnableEurekaClient»

Я настраиваю сервер eureka и клиент eureka для микросервисов весенней загрузки. Версия весенней загрузки — 3.3.0-SNAPSHOT весна-облако.версия - 2023.0.0 Ява - 17

Когда я добавляю аннотацию @EnableEurekaClient в основной класс, он не может найти аннотацию.

Получение этой ошибки- Java: не могу найти символ символ: класс EnableEurekaClient

Я попробовал обе следующие зависимости:

<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-netflix-eureka-client</artifactId>
</dependency>

Полный файл pom.xml

<?xml version = "1.0" encoding = "UTF-8"?>
<project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.3.0-SNAPSHOT</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.bio</groupId>
    <artifactId>security</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>security</name>
    <description>Security Server</description>
    <properties>
        <java.version>17</java.version>
        <spring-cloud.version>2023.0.0</spring-cloud.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <releases>
                <enabled>false</enabled>
            </releases>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>https://repo.spring.io/snapshot</url>
            <releases>
                <enabled>false</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>

Мое приложение.свойства

server.port=8081

spring.cloud.compatibility-verifier.enabled=false

eureka.client.service-url.defaultZone=http://localhost:8761/eureka

Пожалуйста, добавьте полный pom.xml

spencergibb 10.03.2024 13:44

Почему вы установили spring.cloud.compatibility-verifier.enabled на false? Это то, что вам никогда не следует выделять из некоторых крайне ограниченных сценариев, когда вы знаете, что версии несовместимы, и хотите, например, что-то проверить. У вас есть 'scopedTarget.eurekaClient с помпоном выше?

OlgaMaciaszek 18.03.2024 13:33

@OlgaMaciaszek У меня возникла эта ошибка - Spring Boot [3.3.0-SNAPSHOT] is not compatible with this Spring Cloud release train. Я также знал, что разные версии несовместимы, но в моем случае это не повлияет на другие функции проекта.

Shubham Patil 19.03.2024 03:56

Если вы используете несовместимые версии, все может пойти не так, в том числе ошибкаscopedTarget, которую вы указали в другом ответе.

OlgaMaciaszek 20.03.2024 12:32

Подскажите, пожалуйста, как установить совместимые версии?

Shubham Patil 22.03.2024 05:26
1
5
959
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Попробуйте использовать @EnableDiscoveryClient вместо @EnableEurekaClient.

Однако @EnableEurekaClient аннотация больше не требуется. Простое добавление spring-cloud-starter-netflix-eureka-client к зависимостям активирует клиент. https://github.com/spring-cloud/spring-cloud-netflix/issues/4022#issuecomment-915991198

Спасибо за ответ, но возникла еще одна ошибка: ошибка создания bean-компонента с именем 'scopedTarget.eurekaClient', определенным в ресурсе пути к классу.

Shubham Patil 10.03.2024 09:38

Это должно быть связано с какими-то другими проблемами. Можете ли вы поделиться всем своим pom-файлом?

Shanan 10.03.2024 10:51

Вот ссылка Github на мой pom-файл.

Shubham Patil 10.03.2024 13:37

Ссылка недоступна. Возможно, из-за разрешений.

Shanan 10.03.2024 13:56

Пожалуйста, проверьте pom.xml, добавленный в вопрос.

Shubham Patil 10.03.2024 14:24

Использование <artifactId>spring-boot-starter-web</artifactId> вместо <artifactId>spring-boot-starter</artifactId> может решить проблему.

Shanan 10.03.2024 15:06

Спасибо @Shanan, это изменение сработало.

Shubham Patil 10.03.2024 15:34

Другие вопросы по теме