spring cloud 是基于spring boot搭建,父项目中引入依赖时候一定要将spring boot和spring cloud 的版本号对应起来,要不然jar包报错,项目也启动不起来!!!下面是我经过实验后的pom依赖

  1. <dependencies>
  2. <dependency>
  3. <groupId>org.springframework.cloud</groupId>
  4. <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
  5. </dependency>
  6.  
  7. <dependency>
  8. <groupId>org.springframework.cloud</groupId>
  9. <artifactId>spring-cloud-starter-eureka-server</artifactId>
  10. <version>1.4.2.RELEASE</version>
  11. </dependency>
  12.  
  13. <dependency>
  14. <groupId>org.springframework.boot</groupId>
  15. <artifactId>spring-boot-starter-test</artifactId>
  16. <scope>test</scope>
  17. <exclusions>
  18. <exclusion>
  19. <groupId>org.junit.vintage</groupId>
  20. <artifactId>junit-vintage-engine</artifactId>
  21. </exclusion>
  22. </exclusions>
  23. </dependency>
  24.  
  25. <dependency>
  26. <groupId>org.springframework.boot</groupId>
  27. <artifactId>spring-boot-starter-tomcat</artifactId>
  28. <scope>scope</scope>
  29. </dependency>
  30.  
  31. <dependency>
  32. <groupId>org.springframework.cloud</groupId>
  33. <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
  34. </dependency>
  35. <dependency>
  36. <groupId>org.springframework.boot</groupId>
  37. <artifactId>spring-boot-autoconfigure</artifactId>
  38. </dependency>
  39. </dependencies>
  40.  
  41. <dependencyManagement>
  42. <dependencies>
  43. <dependency>
  44. <groupId>org.springframework.cloud</groupId>
  45. <artifactId>spring-cloud-dependencies</artifactId>
  46. <version>Hoxton.SR5</version>
  47. <type>pom</type>
  48. <scope>import</scope>
  49. </dependency>
  50. </dependencies>
  51. </dependencyManagement>
  52.  
  53. <build>
  54. <plugins>
  55. <plugin>
  56. <groupId>org.springframework.boot</groupId>
  57. <artifactId>spring-boot-maven-plugin</artifactId>
  58. </plugin>
  59. </plugins>
  60. </build>
  1.  

配置文件中将application.properties文件的修改为application.yml。

在.yml文件中进行配置添加,在每个字段:后加一空格

  1.  
  1.  
  1. server:
    port: 8761
    spring:
    application:
    name: eureka-server
    eureka:
    client:
    # 表示是否将自己注册到Eureka Server,默认为true。
    register-with-eureka: false
    # 表示是否从Eureka Server获取注册信息,默认为true。
    fetch-registry: false
    # 设置与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址。默认是http://localhost:8761/eureka ;多个地址可使用,分隔
    service-url:
    defaultZone: http://localhost:${server.port}/eureka/
  1.  
  1.  

在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为。就是上面对应的

registerWithEureka: false

fetchRegistry: false  --------引用自https://blog.csdn.net/zzp448561636/article/details/70198878

启动继续报错:org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat;;;切记一定要对应spring boot和spring cloud的版本

至此 ,spring cloud项目初次启动成功。接下来继续按步骤创建生产者

按上面步骤继续创建生产者,pom依赖如下

  1. <groupId>com.zhiyang</groupId>
  2. <artifactId>springclient</artifactId>
  3. <version>0.0.1-SNAPSHOT</version>
  4. <name>springclient</name>
  5. <description>Demo project for Spring Boot</description>
  6.  
  7. <properties>
  8. <java.version>1.8</java.version>
  9. <spring-cloud.version>Hoxton.SR5</spring-cloud.version>
  10. </properties>
  11.  
  12. <dependencies>
  13. <dependency>
  14. <groupId>org.springframework.cloud</groupId>
  15. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
  16. </dependency>
  17.  
  18. <dependency>
  19. <groupId>org.springframework.boot</groupId>
  20. <artifactId>spring-boot-starter-test</artifactId>
  21. <scope>test</scope>
  22. <exclusions>
  23. <exclusion>
  24. <groupId>org.junit.vintage</groupId>
  25. <artifactId>junit-vintage-engine</artifactId>
  26. </exclusion>
  27. </exclusions>
  28. </dependency>
  29. <dependency>
  30. <groupId>org.springframework.boot</groupId>
  31. <artifactId>spring-boot-starter-web</artifactId>
  32. <version>2.3.0.RELEASE</version>
  33. <scope>compile</scope>
  34. </dependency>
  35. </dependencies>
  36.  
  37. <dependencyManagement>
  38. <dependencies>
  39. <dependency>
  40. <groupId>org.springframework.cloud</groupId>
  41. <artifactId>spring-cloud-dependencies</artifactId>
  42. <version>${spring-cloud.version}</version>
  43. <type>pom</type>
  44. <scope>import</scope>
  45. </dependency>
  46. </dependencies>
  47. </dependencyManagement>
  48.  
  49. <build>
  50. <plugins>
  51. <plugin>
  52. <groupId>org.springframework.boot</groupId>
  53. <artifactId>spring-boot-maven-plugin</artifactId>
  54. </plugin>
  55. </plugins>
  56. </build>
  57. <repositories>
  58. <repository>
  59. <id>spring-milestones</id>
  60. <name>Spring Milestones</name>
  61. <url>https://repo.spring.io/milestone</url>
  62. </repository>
  63. </repositories>

对应的application.yml修改为

  1. #服务端口号
  2. server:
  3. port: 8763
  4. #服务名称
  5. spring:
  6. application:
  7. name: zgq-member
  8. #服务注册到eureka
  9. eureka:
  10. client:
  11. service-url:
  12. defaultZone: http://localhost:8761/eureka/
  13. #注册自己
  14. register-with-eureka: true
  15. #是否需要从eureka上获取注册信息
  16. fetch-registry: true

注意字段所处位置,位置不同代表级别不同。至此生产者创建完成

接下来创建消费者,同上面创建的方法一样,对应的pom依赖如下

  1. <groupId>com.zhiyang</groupId>
  2. <artifactId>serviceribbon</artifactId>
  3. <version>0.0.1-SNAPSHOT</version>
  4. <name>serviceribbon</name>
  5. <description>Demo project for Spring Boot</description>
  6.  
  7. <properties>
  8. <java.version>1.8</java.version>
  9. <spring-cloud.version>Hoxton.SR5</spring-cloud.version>
  10. </properties>
  11.  
  12. <dependencies>
  13. <dependency>
  14. <groupId>org.springframework.cloud</groupId>
  15. <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
  16. </dependency>
  17.  
  18. <dependency>
  19. <groupId>org.springframework.boot</groupId>
  20. <artifactId>spring-boot-starter-test</artifactId>
  21. <scope>test</scope>
  22. <exclusions>
  23. <exclusion>
  24. <groupId>org.junit.vintage</groupId>
  25. <artifactId>junit-vintage-engine</artifactId>
  26. </exclusion>
  27. </exclusions>
  28. </dependency>
  29.  
  30. <dependency>
  31. <groupId>org.springframework.cloud</groupId>
  32. <artifactId>spring-cloud-starter-ribbon</artifactId>
  33. <version>1.4.2.RELEASE</version>
  34. </dependency>
  35. <!--断路器-->
  36. <dependency>
  37. <groupId>org.springframework.cloud</groupId>
  38. <artifactId>spring-cloud-starter-hystrix</artifactId>
  39. <version>1.4.4.RELEASE</version>
  40. </dependency>
  41. </dependencies>
  42.  
  43. <dependencyManagement>
  44. <dependencies>
  45. <dependency>
  46. <groupId>org.springframework.cloud</groupId>
  47. <artifactId>spring-cloud-dependencies</artifactId>
  48. <version>${spring-cloud.version}</version>
  49. <type>pom</type>
  50. <scope>import</scope>
  51. </dependency>
  52. </dependencies>
  53. </dependencyManagement>
  54.  
  55. <build>
  56. <plugins>
  57. <plugin>
  58. <groupId>org.springframework.boot</groupId>
  59. <artifactId>spring-boot-maven-plugin</artifactId>
  60. </plugin>
  61. </plugins>
  62. </build>

消费者所对应的application.yml如下:

  1. spring:
  2. application:
  3. name: service-ribbon
  4.  
  5. server:
  6. port: 8764
  7.  
  8. eureka:
  9. client:
  10. serviceUrl:
  11. defaultZone: http://localhost:8761/eureka/

关于spring cloud项目搭建问题的更多相关文章

  1. Spring Cloud项目中通过Feign进行内部服务调用发生401\407错误无返回信息的问题

    问题描述 最近在使用Spring Cloud改造现有服务的工作中,在内部服务的调用方式上选择了Feign组件,由于服务与服务之间有权限控制,发现通过Feign来进行调用时如果发生了401.407错误时 ...

  2. Spring MVC 项目搭建 -6- spring security 使用自定义Filter实现验证扩展资源验证,使用数据库进行配置

    Spring MVC 项目搭建 -6- spring security使用自定义Filter实现验证扩展url验证,使用数据库进行配置 实现的主要流程 1.创建一个Filter 继承 Abstract ...

  3. Spring MVC 项目搭建 -5- spring security 使用数据库进行验证

    Spring MVC 项目搭建 -5- spring security 使用数据库进行验证 1.创建数据表格(这里使用的是mysql) CREATE TABLE security_role ( id ...

  4. Spring MVC 项目搭建 -4- spring security-添加自定义登录页面

    Spring MVC 项目搭建 -4- spring security-添加自定义登录页面 修改配置文件 <!--spring-sample-security.xml--> <!-- ...

  5. Spring MVC 项目搭建 -3- 快速 添加 spring security

    Spring MVC 项目搭建 -3- 快速 添加 spring security 1.添加 spring-sample-security.xml <!-- 简单的安全检验实现 --> & ...

  6. Spring MVC 项目搭建 -2- 添加service ,dao,junit

    Spring MVC 项目搭建 -2- 添加service ,dao,junit 1.dao public class Hero { private String name; public Strin ...

  7. Spring MVC 项目搭建 -1- 创建项目

    Spring MVC 项目搭建 -1- 创建项目 1.创建 Dynamic Web project (SpringDemo),添加相关jar包 2.创建一个简单的controller类 package ...

  8. 如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目

    如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目 #1:前提准备 1.1 首先请确认你的电脑是windows10专业版或企业版,只有这 ...

  9. Spring Boot项目搭建

    1.Spring Boot概述 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人 ...

随机推荐

  1. 公司新来了一个质量工程师,说团队要保证 0 error,0 warning

    摘要:静态代码检查又称为静态程序分析,是指在不运行计算机程序的条件下,进行程序分析的方法. 本文分享自华为云社区<公司新来了一个质量工程师,说团队要保证 0 error,0 warning> ...

  2. 【阿菜Writeup】Security Innovation Smart Contract CTF

    赛题地址:https://blockchain-ctf.securityinnovation.com/#/dashboard Donation 源码解析 我们只需要用外部账户调用 withdrawDo ...

  3. 使用nmap命令扫描开放端口

    1.安装nmap 1.下载nmap安装包 下载地址:http://www.nmap.com.cn/ 根据自己需求下载,各种版本都有,我下载的是windows版本,安装版的. 2.安装 基本都是无脑安装 ...

  4. SpringBoot获取所有接口的路由

    @Autowired WebApplicationContext applicationContext; @RequestMapping(value = "v1/getAllUrl" ...

  5. EL表达式学习(二)

    1.从特定域中获取值: 2.从请求页面的input标签中,获取值:(同servlet中的getParameter和getParameterValues): 3.获取请求头(同servlet中的getH ...

  6. ubuntu 2018 apt 代理proxy设置

    永久设置 打开代理文件,好像默认没有,98proxy是自己新建的 sudo gedit /etc/apt/apt.conf.d/98proxy 在打开的文件中输入如下内容,其中username和pas ...

  7. 基于SigalR实现的奥运会实时金牌榜

    系统架构 三端 winform 后台数据管理 + Asp.Net Mvc 前台数据展示 + Xamarin.Forms 移动端跨平台APP 因为本人的代码水平一般,期间遇到了一些问题,如signalR ...

  8. mpvue 生成字节跳动小程序的问题!!

    初始化项目文件 $ vue init mpvue/mpvue-quickstart fuck $ cd fuck $ npm install 这个时候就初始化好了,接下来 $ npm run dev: ...

  9. Django——ORM打印SQL

    如果想打印ORM转换过程中的SQL,需要在settings.py中进行如下配置: LOGGING = { 'version': 1, 'disable_existing_loggers': False ...

  10. 快速模式第三包:quick_inR1_outI2()

    快速模式第三包:quick_inR1_outI2() 文章目录 快速模式第三包:quick_inR1_outI2() 1. 序言 2. quick_inR1_outI2()的处理流程 3. 快速模式第 ...