Nacos服务搭建系列之——(三)Nacos的服务管理-搭建生产者服务

这里顺便学习了一般项目中的结构来搭建
首先创建一个module,作为parent-module,然后删除自动生成的src等目录,留下pom文件作为parent
并重写pom修改此pom的打包方式。
并且添加Module

<modules>
   <module>nacos-provider-demo</module>
   ...
</modules>

同时将子包需要用到的共用依赖全部放入中,以便统一管理版本号。
这里需要注意的是,如果parent-pom已经继承了spring-boot-starter-parent,如下

<parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.1.10.RELEASE</version>
   <relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>cn.kiring</groupId>
<artifactId>nacos_service_discovery_demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>nacos_service_discovery_demo</name>
<description>Demo project for Spring Cloud Nacos Service Discovery</description>

<packaging>pom</packaging>

那属于这个spring-boot-stater-parent的依赖就不能放进dependencyManagement中,这是因为这个里面是需要指明version表示的,并且是一定为连接到子包的,就比如这个依赖:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>

这个依赖不需要版本号,因为其版本本身是由spring-boot-starter-parent这个pom控制的,但是如果把其放入dependencyManagement中,且不加版本号,那么子依赖的spring-boot-starter-web就会有dependencyManagement里的控制,而不是spring-boot-starter-parent控制,从而失去版本号。

如果想要依赖关系更加清晰,可以使用spring-boot-dependenciesh和spring-cloud-dependencies这两个依赖(alibaba-nacos官方demo就是这么用的)

把这两个依赖放入dependencyManagement中,并加上相应的SpringBoot版本号和SpringCloud的版本号,比如这里用的分别是2.1.10.RELEASE,Greenwich.RELEASE

编写配置文件:

server:
  port: 8001

spring:
  cloud:
    nacos:
      config:
        server-addr: 192.168.116.210:9000
        file-extension: yaml
      discovery:
        server-addr: 192.168.116.210:9000
  application:
    name: nacos-provider-demo

关于版本
根据官网的版本关系,2.1.x的SpringBoot使用Greenwith的SpringCloud
并配合2.1.1的Spring Cloud Alibaba Version
在这里插入图片描述
版本说明

发布了25 篇原创文章 · 获赞 9 · 访问量 6627

猜你喜欢

转载自blog.csdn.net/qq_40233503/article/details/104616270