创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

IT 文章5年前 (2021)发布 小编
0 0 0

1、前言

我们在使用SpringBoot开发一个项目时,需要遵循约定>配置>编码的原则,即:

开发人员仅需规定应用中不符合约定的部分,在没有规定配置的地方,采用默认配置,以力求最简配置为核心思想。

2、创建微服务聚合父工程

2.1 创建Maven项目

打开File->New->Project,创建Maven项目,archetype我们选maven-archetype-site,具体如图:
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

ad

程序员导航

优网导航旗下整合全网优质开发资源,一站式IT编程学习与工具大全网站

2.2 聚合总工程命名

主要命名GAV,分别为组织名(一般公司域名逆向书写),分支名(工程名称)和版本号(一般默认即可),我的命名如下:
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

2.3 Maven配置

选择自己配好的版本,以及核心配置文件(在配置maven时一般都设置好了)
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

2.4 确定工程名称

确定工程名称和工程目录,然后finish,我的如下:
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

2.5 统一编码

选中创建好的项目,点击File->settings->Editor->Filer Encodings,全设置为UTF-8
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

ad

AI 工具导航

优网导航旗下AI工具导航,精选全球千款优质 AI 工具集

2.7 统一编译版本

选中创建好的项目,点击File->settings->Build...->Java Compiler,将版本改为自己的JDK版本
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

2.8 注解生效激活

选中创建好的项目,点击File->settings->Build...->Annotation Processors,勾上选项
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

2.8 File Types过滤器(可选)

我这里过滤了*.iml*.idea,这是个可选操作,为了项目看起来更简洁
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)

3、设置父工程POM

打开父工程的pom.xml,修改如下:




  4.0.0

  com.panziye.springcloud
  mscloud
  1.0-SNAPSHOT
  
  pom

  
  
    UTF-8
    1.8
    1.8
    4.12
    1.2.17
    1.18.8
    8.0.22
    1.2.5
    2.1.4
  
  
  
    
      
      
        org.springframework.boot
        spring-boot-dependencies
        2.3.2.RELEASE
        pom
        import
      
      
      
        org.springframework.cloud
        spring-cloud-dependencies
        Hoxton.SR8
        pom
        import
      
      
      
        com.alibaba.cloud
        spring-cloud-alibaba-dependencies
        2.2.5.RELEASE
        pom
        import
      

      
        mysql
        mysql-connector-java
        ${mysql.version}
      
      
        com.alibaba
        druid
        ${druid.version}
      
      
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        ${mybatis.spring.boot.version}
      
      
        junit
        junit
        ${junit.version}
      
      
        log4j
        log4j
        ${log4j.version}
      
      
        org.projectlombok
        lombok
        ${lombok.version}
        true
      
    
  

  
    
      
        org.springframework.boot
        spring-boot-maven-plugin
        2.2.9.RELEASE
      
    
  


至此,父项目工程整个框架就建好了

4、Maven知识相关补充

1)项目的打包(packing)类型:pom、jar、war,默认是jar类型
[list]pom——父类型都为pom类型
jar——内部调用或者是作服务使用
war ——需要部署的项目[/list]

ad

免费在线工具导航

优网导航旗下整合全网优质免费、免注册的在线工具导航大全

2)dependencyManagementdependencies区别
在Maven中dependencyManagement的作用其实相当于一个对所依赖jar包进行版本管理的管理器。
dependencyManagement下申明的dependencies,Maven并不会去实际下载所依赖的jar包,而是在dependencyManagement中用一个Map记录了jar的三维坐标。而被仅仅是被dependencies包裹的元素,Maven是会去仓库实际下载所需要的jar包的,而至于需要下载什么版本的jar包就有两种判断途径:

a) 如果dependencies里的dependency自己没有声明version元素,那么maven就会倒dependencyManagement里面去找有没有对该artifactIdgroupId进行过版本声明,如果有,就继承它,如果没有就会报错,告诉你必须为dependency声明一个version

b) 如果dependencies中的dependency声明了version,那么无论dependencyManagement中有无对该jar的version声明,都以dependency里的version为准。

3) Maven中跳过单元测试
找到IDEA最右侧有个Maven菜单,点开执行如下操作即可,如果代码没有问题,跳过单元测试可以提高效率
创建聚合父工程—SpringCloud(H版)微服务学习教程(3)
4) Maven其他重要常用指令
(1)maven clean
对项目进行清理,清理的过程中会删除target目录下编译的内容。

(2)maven compile
编译项目源代码。

(3)maven test

对项目的运行测试。

(4)maven package

可以打包后的文件存放到项目的 target 目录下,打包好的文件通常都是编译后生成的class文件。

(5)maven install
在本地仓库生成仓库的安装包可以供其他项目引用,同时打包后的文件存放到项目的 target 目录下。
[v_act]附:[/v_act]
1)mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段。
2)mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段。
3)mvn clean deploy依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9个阶段。

© 版权声明

相关文章

暂无评论

暂无评论...