一块儿来学Spring Cloud | 第一章 :如何搭建一个多模块的springcloud项目

在spring cloud系列章节中,原本已经写了几个章节了,可是本身看起来有些东西写得比较杂,因此重构了一下springcloud的章节内容,新写了本章节,先教你们在工做中如何搭建一个多模块的springcloud项目。html

本章及后面章节,咱们使用的开发环境是 spring tool suite (sts)  + maven (固然你也可使用IDEA + Gradle,目前使用的公司也不少)。java

1、新建一个父maven project模块spring

File->new->other->maven->maven projectapache

记得勾选红框,咱们仅仅只是须要该项目的pom.xml文件springboot

若是生成后,有src文件,咱们删除该文件,只保留pom.xml文件架构

修改pom.xml文件内容app

<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>
  <parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.1.4.RELEASE</version>
	<relativePath/> <!-- lookup parent from repository -->
  </parent>

  <groupId>com.haly</groupId>
  <artifactId>springcloud</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>springcloud</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <spring-cloud.version>Greenwich.SR1</spring-cloud.version>
  </properties>

  <dependencies>
    <dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-test</artifactId>
	<scope>test</scope>
    </dependency>
  </dependencies>
  
  <dependencyManagement>
    <dependencies>      
        <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-dependencies</artifactId>
          <version>${spring-cloud.version}</version>
          <type>pom</type>
          <scope>import</scope>
      </dependency>
      </dependencies>
  </dependencyManagement>
 	
 <build>
      <plugins>
          <plugin>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-maven-plugin</artifactId>
          </plugin>
      </plugins>
  </build>
</project>

注意: 不少同窗在搭建项目的过程当中,引入依赖时,pom文件老是报错,这通常是springboot和springcloud的版本不一致形成。maven

这个系列全部章节,咱们使用的版本为    springboot :2.1.4.RELEASE        springcloud:Greenwich.SR1svn

咱们新建这个父工程后,发现它其实只有一个pom文件,没有什么业务功能,可是工做中咱们都会新建一个这样的项目目录,它的做用以下spring-boot

1. 工做中,咱们整个项目的名称就是这个maven项目的名称,在svn中拉取项目下,只要拉这个主工程的分支就好了。

2. 它的pom文件会定义为父pom,后续的module工程能够继承该pom,因此不少module工程共用的配置,均可以放到这里。

2、新建一个springcloud-eureka-server子模块

选择主项目springcloud,右键->Maven->new maven module project

生成项目目录结构以下:

注意:有些同窗新建子项目完成后,项目的展现都是并排着,没有展现出父子关系,须要调整一个展现形式,才会出现上面的项目结构。

点击上图标红的地方 -> projects Presentation - > Hierarchical

若是生成的springcloud-eureka-server模块没有resources目录

springcloud-eureka-server上右键点击项目-> new->Source Folder

3、新建一个springcloud-eureka-client子模块

参考新建springcloud-eureka-server模块的步骤,新增一个springcloud-eureka-client模块

生成的项目结构以下:

这时,咱们去父项目springcloud中打开pom.xml文件,会发现自动增长了新建子模块的引入

 <modules>
   <module>springcloud-eureka-server</module>
   <module>springcloud-eureka-client</module>
  </modules>

4、总结:

经过上面的步骤,咱们已经搭建好了一个多模块的springcloud项目,可是这仅仅只是一个项目架构,若是须要运行起来,咱们还须要作以下三步

1. 修改子模块的pom.xml文件,增长对应模块功能须要的依赖包

2. 在src/main/resources目录下,新增application.properties文件,配置项目的配置项

3. 在src/main/java目录的com.haly包下,新增对应模块的启动类

如何运行多模块springcloud项目,请看下一章节:一块儿来学Spring Cloud | 第二章:服务注册和发现组件 (Eureka)

相关文章
相关标签/搜索