体验spring家族产品的最好的办法就是上 spring.io ,去上面看文档。然后我在官网上找到了这个例子 https://github.com/spring-cloud-samples/eureka
当然,我们这里不直接复制官网的,跑跑就完事,我们来熟悉一下流程
1.项目创建
spring cloud 项目其实是基于 spring boot 项目的,所以这里我们创建一个 普通的 spring boot项目(基于spring boot 2.0.1)
2.pom.xml 配置
参考官网例子可知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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zzq</groupId>
<artifactId>SpringCloudEurekaServer</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>SpringCloudEurekaServer</name>
<description>SpringCloudEurekaServer</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>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.BUILD-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</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>
<build>
<plugins>
<!-- 编译插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
3.yml配置
eureka-server 会把服务注册到项目中,包含自己,然而,注册自己的时候又会报错,所以为了避免报错,我们需要设置,项目不自己注册自己,同时不从 eureka-server中获取注册信息。
eureka:
client:
# 是否注册自己,此处要选fasle,不然会自己注册自己,然后报错
register-with-eureka: false
# 是否从 eureka server 中获取注册信息,默认 true,此处写 false
fetch-registry: false
4.启动类配置
启动类加上 @EnableEurekaServer 就ok
5.效果
直接启动,启动后访问 ip:port
然后看到页面