无法呈现尤里卡仪表板

Posted

技术标签:

【中文标题】无法呈现尤里卡仪表板【英文标题】:unable to render eureka dashboard 【发布时间】:2018-10-08 16:43:11 【问题描述】:

我正在使用 spring boot 创建 spring eureka 独立应用程序服务器。但是当我尝试加载尤里卡服务器仪表板时,错误页面会显示为附件。

pom.xml 是

<?xml version="1.0" encoding="UTF-8"?>

http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0

<groupId>com.oyeplay</groupId>
<artifactId>service-registry</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>service-registry</name>
<description>Demo project for Spring Boot</description>

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.1.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <spring-cloud.version>Finchley.RC1</spring-cloud.version>
</properties>

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

<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>

<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>
</repositories>

application.yml 是

    server:
  port: 8761

eureka:
  instance:
    hostname: localhost
  client:
    registerWithEureka: false
    fetchRegistry: false
    serviceUrl:
      defaultZone: http://$eureka.instance.hostname:$server.port/eureka/

ServiceRegistryApplication.java 是

    package com.oyeplay.serviceregistry;

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


@SpringBootApplication
@EnableEurekaServer
public class ServiceRegistryApplication 

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

    

谁能告诉我我犯了什么错误?

【问题讨论】:

【参考方案1】:

如果您查看弹簧指南https://spring.io/guides/gs/service-registration-and-discovery/ 会观察到相同的情况,即 Eureka 仪表板未显示。

这可能是由于 Spring Boot、Spring Cloud 和 Netflix Eureka Server 库的最新版本发生了变化。似乎文档缺少这部分。

如果你想真正看到 Eureka 仪表板,现在只需将依赖项降级如下:

Spring boot starter 父级:使用&lt;version&gt;1.5.10.RELEASE&lt;/version&gt; 而不是&lt;version&gt;2.0.1.RELEASE&lt;/version&gt;

Spring云版:使用 &lt;spring-cloud.version&gt;Edgware.SR3&lt;/spring-cloud.version&gt; 而不是 &lt;spring-cloud.version&gt;Finchley.RC1&lt;/spring-cloud.version&gt;

依赖于 Eureka 服务器:使用 &lt;artifactId&gt;spring-cloud-starter-eureka-server&lt;/artifactId&gt; 改为 的 &lt;artifactId&gt;spring-cloud-starter-netflix-eureka-server&lt;/artifactId&gt;

【讨论】:

【参考方案2】:

确保资源目录下没有“模板”和“静态”文件夹。如果你有 spring-web 依赖,这两个文件夹会自动创建。

【讨论】:

我遇到了同样的问题,这正是原因。谢谢!【参考方案3】:
    删除静态和模板文件夹 删除 .build 文件夹 运行并转到http://localhost:8761/

【讨论】:

【参考方案4】:

我不确定是技术问题,他只需要输入正确的 URL http://localhost:8761/eureka/ 不是 http://localhost:8761

【讨论】:

以上是关于无法呈现尤里卡仪表板的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在 Dash 仪表板上呈现 spaCy 的 NER 输出?

用户控制的仪表板应用程序小部件中的数据呈现 - 最佳实践?

仪表板展示 | DataEase看中国:数据呈现中国资本市场

仪表板展示 | DataEase看中国:数据呈现中国能源发展情况

仪表板展示 | DataEase看中国:数据呈现中国能源发展情况

如果没有在 URL 更改上重新加载页面,React 不会呈现