Die Spring Boot-App mit Eureka DiscoveryClient kann nicht gestartet werdenJava

Java-Forum
Anonymous
 Die Spring Boot-App mit Eureka DiscoveryClient kann nicht gestartet werden

Post by Anonymous »

Ich versuche, eine einfache Spring Boot-Anwendung zu schreiben, die (1) sich bei einem Netflix-Eureka-Server registrieren und (2) den Eureka-Server abfragen kann, um Details zu anderen registrierten Diensten abzurufen.

Meine Client-Klasse verfügt über ein @Autowired-Feld vom Typ com.netflix.discovery.DiscoveryClient, das verwendet wird, um mit Eureka zu kommunizieren und es abzufragen, um mehr über andere Dienste zu erfahren. In meiner Hauptklasse habe ich die Annotation @EnableDiscoveryClient:

Code: Select all

@SpringBootApplication
@EnableDiscoveryClient
public class AppBootstrap {

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

}
In meiner application.yml-Datei unter src/main/resources habe ich:

Code: Select all

eureka:
instance:
lease-renewal-interval-in-seconds: 10
lease-expiration-duration-in-seconds: 20
prefer-ip-address: true
secure-port: 443
non-secure-port: 80
metadata-map:
instanceId: my-test-instance
client:
service-url:
defaultZone: http://localhost:9080/eureka/
registry-fetch-interval-seconds: 6
instance-info-replication-interval-seconds: 6
register-with-eureka: true
fetch-registry: true
heartbeat-executor-thread-pool-size: 5
eureka-service-url-poll-interval-seconds: 10
Wenn ich meine App starte, kann der Dienst nicht gestartet werden und löst eine Ausnahme aus, die ihren Ursprung hat bei:

< strong>Verursacht durch: java.lang.AbstractMethodError: org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean.getInstanceI
d()Ljava/lang/String;
bei com.netflix.appinfo.providers.EurekaConfigBasedInstanceInfoProvider.get(EurekaConfigBasedInstanceInfoProvider
.java:53)
bei com.netflix.appinfo.ApplicationInfoManager.initComponent(ApplicationInfoManager.java:90)
... 25 weitere

Ich habe keine Ahnung, was hier los ist. Irgendwelche Ideen? Ich glaube, die App sollte auch dann noch starten, wenn meine Eureka-Konfiguration falsch ist, aber sie stürzt beim Start ab.

Zweitens: Verwende ich den richtigen DiscoveryClient? Idealerweise würde ich es gerne allgemein halten, sodass ich es mit Eureka, Consul oder ZooKeeper als Beispielen verwenden kann. Ich finde, dass die Dokumentation nicht besonders gut darin ist, genau zu erklären, was bei der Verwendung dieser Spring Cloud-/Netflix-Erkennungskomponenten erforderlich ist.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post