首页 > 其他分享 >spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)

时间:2023-05-06 15:08:16浏览次数:40  
标签:shopping 注册 url gradle 父子 dependencies 子项目 搭建


一、新建一个父级gradl模块

1.在桌面或新建文件里面,右键,打开IDEA

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring cloud

  1. 选择Flie > NEW > Module
    选择Gradle, 选择Module SDK 1.8, 选择Java



    创建完成后,idea中会多出一个项目,如下图示例

    然后直接关闭当前idea, 进入刚才创建好的文件下,再次打开项目
    可以直接删除src目录

二、新建子级gradl模块,用于存放Eureka注册中心项目

在父级项目上右键(这一步和上一步有区别,其他都后面步骤都一样) > NEW > Module 选择Gradle, 选择Module SDK 1.8, 选择Java

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_gradle 微服务框架搭建_02

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_注册Eureka_03


父级项目得settings.gradle, 会自动添加include ‘shopping-order’ 说明:

1.循环此步骤即可创建多个子项目

2.或者直接复制已经创建好的子项目,粘贴到同级目录,粘贴时候,记着修改子项目名称(shopping-pay,shopping-goods等), 切记切记,还需要在父级项目中的setting.gradle中包含子项目,比如:include 'shopping-goods'


三、修改父级bulid.gradle配置

原有的bulid.gradle配置,保留group version sourceCompatibility等属性, 其他全部注释掉或者删除
如下修改后代码,粘贴完成后,点击idea的import changes或刷新gradle即可

/*plugins {
        id 'java'
    }

    group 'com.pd'
    version '1.0-SNAPSHOT'

    sourceCompatibility = 1.8

    repositories {
        mavenCentral()
    }

    dependencies {
        testCompile group: 'junit', name: 'junit', version: '4.12'
    }*/


    group 'com.pd'
    version = '1.0-SNAPSHOT'
    apply plugin: 'java'
    sourceCompatibility = 1.8

    //构建Gradle脚本自身需要的资源,可以声明的资源包括依赖项、第三方插件、maven仓库地址等。
    buildscript {
        ext {
            springBootVersion = '2.0.2.RELEASE'
            springCloudVersion = 'Finchley.M8'
        }

        //设置仓库
        repositories {
            maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
            maven { url 'https://repo.spring.io/milestone'}
        }

        //用来打包
        dependencies {
            classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
        }
    }

    //配置全局, 包括root项目和子项目
    allprojects {

        //设置仓库
        repositories {
            maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
            maven { url 'https://repo.spring.io/milestone'}
        }

        //配置编码格式
        tasks.withType(JavaCompile) {
            options.encoding = "UTF-8"
        }
    }



四、修改子级项目的bulid.gradle配置

原有的bulid.gradle配置全部注释掉或者删除,引入空的dependencies即可

/*plugins {
    id 'java'
}

group 'com.pd'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
}*/

dependencies {

}

说明:

1.子项目已经继承了父项目中配置,就不需要其他多余配置

2.子项目中空的dependencies依赖,适用于依赖各自子项目独有的依赖,如果配置子项目中公共的依赖,在父项目的subprojects.dependencies引入即可


五、新建子级项目启动项

新建java路径下的package,例如:com.pd.shopping.order

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_注册Eureka_04


新建子项目启动项ShoppingOrderApplication

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring cloud_05


代码如下:

package com.pd.shopping.order;

import org.springframework.boot.SpringApplication;
import org.springframework.cloud.client.SpringCloudApplication;

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



六、新建子级项目application.yml

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring cloud_06


代码如下:

#声名服务端口号
server:
  port: 11004
#设置服务名称
spring:
  application:  # 应用名字,eureka 会根据它作为服务id
    name: shopping-order
eureka:
  client:
    #是否在注册中心注册自己
    register-with-eureka: true
    #是否从 eureka 获取注册信息
    fetch-registry: true
    #配置注册中心的url (注意:地址最后面的 /eureka/ 这个是固定值)服务注册也就依赖这个url,后续我们会用到
    service-url:
        defaultZone: http://localhost:11001/eureka

说明:

1.各个子项目的端口号不能相同

2.defaultZone注册中的地址,注册中心需要提前运行


七、创建子项目具体业务文件路径(可选跳过)

此步骤可跳过,也可以在后面步骤中创建

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_注册Eureka_07


八、创建多个子项目说明

1.创建多个子项目重复,重复上面文章中的 二、四、五、六、七步骤,三步骤中配置一次即可

2.或者直接复制已经创建子项目,进行平级目录粘贴,并修改其中子项目名称、启动类名称即可

还手动需要在父级项目的setting.gradle中包含,例如:

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring_08


复制粘贴并且修改完成后,需要更新一下gradle

如果出现异常的启动项,可以删除,更新gradle,重新的配置子项目

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring_09


3.创建多个服务过程中,idea会自动识别出多模块,自行弹出多模块设置,这个设置可以直接忽略,但是我这建议设置

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_注册Eureka_10


spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring cloud_11


4.子项目整体截图

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring cloud_12


目前将shopping项目,分成4个微服务,用户user, 商品goods, 支付pay, 订单order, 各个服务可以单独启动或单独部署,部署后续文章更新

九、启动各个服务

1.顶部导航栏,可以选择单个服务debug启动,启动成功后,切换另一个启动类,再次debug启动

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_spring_13


2.如果在第八步骤3中,已经设置过多模块配置,也可以在底部工具右键单个服务启动或者全部服务启动

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_注册Eureka_14


提前启动运行注册中心,参考:javascript:void(0) 浏览器输入:http://localhost:11001/

spring cloud、gradle、父子项目、微服务框架搭建---搭建父子级多模块项目,并注册到Eureka注册中心(二)_注册Eureka_15


看到这个页面说明,用户user, 商品goods, 支付pay, 订单order4个微服务,已经成功注册到eureka注册中心


标签:shopping,注册,url,gradle,父子,dependencies,子项目,搭建
From: https://blog.51cto.com/u_16082658/6249904

相关文章

  • Reverse|Buuctf 简单注册器
    反编译apk文件,搜索flag找到关键代码publicvoidonClick(Viewparam1View){byteb=1;Stringstr=editview.getText().toString();if(str.length()!=32||str.charAt(31)!='a'||str.charAt(1)!='b'||str.ch......
  • 在docker中搭建nominatim服务
    nominatim推荐配置(https://nominatim.org/release-docs/4.2/admin/Installation/#tuning-the-postgresql-database):至少需要2GB的RAM,否则安装将失败。对于完整的星球导入,强烈建议使用128GB或更多的RAM。如果您的RAM小于64GB,请不要报告内存不足问题。对于完整的星球安装,您......
  • 郑州惠济区注册公司流程和费用
    本文转载自:郑州惠济区注册公司流程和费用_郑州市惠济区办理营业执照在哪里办优账财税郑州:www.tetheme.com/zhengzhou【郑州惠济区营业执照代理多少钱(郑州市营业执照代理流程)】郑州惠济区营业执照代理一般会在网站上留下公司的联系方式(电话),方便你在线多维度筛选郑州惠济区营......
  • 金水区注册公司代办
    本文转载自:金水区注册公司代办_郑州高新区注册公司流程优账财税郑州:www.tetheme.com/zhengzhou【郑州金水区园区注册公司(如何在郑州金水区办理企业注册审批)】近年来,郑州金水区注册公司的地址要求越来越高,使用虚拟地址注册公司已经无法实现。但是很多人在使用郑州金水区园区地......
  • 郑州中原区注册公司地址
    本文转载自:郑州中原区注册公司地址_郑州高新区公司注册优账财税郑州:www.tetheme.com/zhengzhou【郑州市中原区园区注册公司(如何在郑州市中原区办理企业登记审批)】近年来,郑州市中原区注册公司的地址要求越来越高,使用虚拟地址注册公司已经无法实现。但是很多人发现在使用郑州中......
  • 使用MASA全家桶从零开始搭建IoT平台(二)设备注册
    前言我们不希望任何设备都可以接入我们的IoT平台,所以一个设备正常的接入流程是这样的,1、上位机软件通过串口或其他方式读取设备的唯一标识码UUID。2、上位机调用IoT后台接口,发送UUID和ProductID。3、后台接口判断设备是否注册过,如果没有注册过,就根据ProductID并按照一定规律生......
  • 郑州金水区注册公司去哪个工商局
    本文转载自:郑州金水区注册公司去哪个工商局_郑州金水区工商注册大厅地址优账财税郑州:www.tetheme.com/zhengzhou【郑州金水区代理注册公司(在金水区注册一家公司要多少钱)】很多人打算开公司,办理营业执照的时候,首先想到的是自己去金水区工商局办理。但受疫情政策影响,企业只需通......
  • Linux下搭建Python2.7环境
    Python(英语发音:/ˈpaɪθən/),是一种面向对象、解释型计算机程序设计语言,由1989年底发明。python具有简单、易学、免费、开源、可移植性、解释性、可嵌入性等特点,是一种不受局限、跨平台的开源编程语言,它功能强大且简单易学,因而得到了广泛应用和支持。1.Python下载Pyt......
  • 怎么搭建web组态
    web组态是指通过可视化拖拽组件的方式,低代码搭建监控大屏、web页面。物联网各行业的数据以及监控场景,每个行业的业务不同,需要展示的页面也不同。组态快速搭建页面的优势,能更好的满足不同定制化监控页面的需求。BY组态软件,专注于能源电力、工业互联网、智能制造、原型设计等领域......
  • 怎么搭建web组态
    Web组态是指通过可视化拖拽组件的方式,低代码搭建监控大屏、web页面。物联网各行业的数据以及监控场景,每个行业的业务不同,需要展示的页面也不同。组态快速搭建页面的优势,能更好的满足不同定制化监控页面的需求。BY组态软件,专注于能源电力、工业互联网、智能制造、原型设计等领域的......