Version named

Spring Cloud is a large integrated project made up of many independent sub-projects, each with a different release rhythm and maintaining its own release number. In order to better manage the version of Spring Cloud, a resource list BOM (Bill of Materials) is used to avoid confusion with the release number of the sub-project, so the version number is not used, but by naming. The names are arranged in alphabetical order. For example, the names of London Underground stations (” Angel “is the first version,” Brixton “is the second version,” Camden “is the third version, etc.). When the point releases of individual projects accumulate to a critical mass, or there is a critical defect in one of the projects that needs to be available to everyone, the release sequence will launch “service releases” with names ending in **”.srx “, where “X” is a number ** (for example, the current version is: Hoxton.sr8).

London Underground Station names: Angel, Brixton, Camden, Dalston, Edgware, Finchley, Greenwich, Hoxton

Spring Boot and Spring Cloud versions are compatible

  • Angel: Version based on SpringBootX 1.2.Version Building and1.3Versions are not compatible.
  • Brixton: Version based on SpringBootX 1.3.Version Building and1.2Versions are not compatible.
  • Brixton and Angel Release was officially scrapped in 2017.
  • Camden: The version is based on SpringBootX 1.4.Version build and in1.5The version passed the test.
  • Camden Release was officially scrapped in 2018.
  • Dalston, Edgware: Version based on SpringBootX 1.5.Version build, currently not available in SpringBootX 2.0.Used in version.
  • Dalston Release was officially scrapped in December 2018.
  • Finchley: Version based on SpringBootX 2.0.Versions are being built and are not compatible1.xVersion.
  • Greenwich: Version based on SpringBootX 2.1.Versions are being built and are not compatible1.xVersion.
  • Hoxton: Version based on SpringBootX 2.2.Version builds.

Basic environment construction

  1. Project Address:

  2. Description:

    1. IDEA: 2020
    2. Maven: 3.6.3
    3. The JDK: 8
    4. Spring the Boot: 2.2.5
    5. Spring Cloud: Hoxton SR6
  3. Setting up the infrastructure

    Note: Each component needs to build the Spring Cloud base environment in the project or module pom.xml file.

    Steps:

    1. If it is a parent Project: Create an Empty Project.
    2. If service:
      1. Build the module using Spring Initializr in the parent project.
      2. Delete the related files in the module, save only the SRC folder, pom. XML and XXXX. iml files.
      3. Configure POM. XML to build the Spring Cloud base environment.

Service POM.xml template:

   
      
   <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 https://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.2.5. RELEASE</version>
           <relativePath/> <! -- lookup parent from repository -->
       </parent>
       <groupId>org.aydenbryan</groupId>
       <artifactId>environment</artifactId>
       <version>0.0.1 - the SNAPSHOT</version>
       <name>environment</name>
       <description>Demo project for Spring Boot</description>
       <properties>
           <java.version>1.8</java.version>
           <! -- SpringCloud version -->
           <spring.cloud.version>Hoxton.SR6</spring.cloud.version>
       </properties>
       <dependencies>
           <! Dependencies dynamically selected based on the needs of the component -->
           <dependency>
               <groupId>org.springframework.boot</groupId>
               <artifactId>spring-boot-starter-web</artifactId>
           </dependency>
       </dependencies>
   
       <build>
           <plugins>
               <plugin>
                   <groupId>org.springframework.boot</groupId>
                   <artifactId>spring-boot-maven-plugin</artifactId>
                   <configuration>
                       <excludes>
                           <exclude>
                               <groupId>org.projectlombok</groupId>
                               <artifactId>lombok</artifactId>
                           </exclude>
                       </excludes>
                   </configuration>
               </plugin>
           </plugins>
       </build>
   
       <! Spring boot2.2.5 not found in Maven repository -->
       <repositories>
           <repository>
               <id>spring-snapshots</id>
               <url>http://repo.spring.io/libs-snapshot</url>
           </repository>
       </repositories>
       <pluginRepositories>
           <pluginRepository>
               <id>spring-snapshots</id>
               <url>http://repo.spring.io/libs-snapshot</url>
           </pluginRepository>
       </pluginRepositories>
   
       <! -- Manage the SpringCloud version globally and provide download locations for SpringCloud components -->
       <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>
   </project>
   
Copy the code