本次使用的是cloudalibaba2.2.6,算是比較穩定的版本,springboot3需要jdk17 這個版本的jdk可能會收費所以還是用jdk8了

 

創建項目:

 2 

項目創建完成就只有一個pom.xml文件 具體的配置我就不細致的說明了 大概的提一下

<?xml version="1.0" encoding="UTF-8"?>
<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.6.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <java.version>8</java.version>
        <!-- Spring Cloud -->
        <spring.cloud.version>Hoxton.SR12</spring.cloud.version>

        <!-- Spring Boot -->
        <spring-boot.version>2.3.12.RELEASE</spring-boot.version>
        <!-- Spring Cloud alibaba -->
        <project.version>2.2.9.RELEASE</project.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>

            <!-- Spring Dependencies -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring.cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.9.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

需要注意的就是 

<!-- Spring Cloud -->
<spring.cloud.version>Hoxton.SR12</spring.cloud.version>
<!-- Spring Boot -->
<spring-boot.version>2.3.12.RELEASE</spring-boot.version>
<!-- Spring Cloud alibaba -->
<project.version>2.2.9.RELEASE</project.version>
這三個版本需要對應起來,要不然創建的項目會有問題 版本不兼容具體的對應版本可以查看spring的官網
貼一個別人寫的文章也說的很清楚 Spring Boot、Spring Cloud與Spring Cloud Alibaba版本對應關系-阿里云開發者社區

到此基礎的項目工程就創建完成了

在項目中創建模塊:

選擇工程名右鍵 -new - module

 type 要選擇maven

 創建完成后目錄的樣子

 修改test1模塊的pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<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>com.example</groupId>
        <artifactId>demo</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <artifactId>test1</artifactId>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

創建一個controller類

package com.example.demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.Map;

@RequestMapping("/user")
@RestController
public class UserController {

    @RequestMapping("/getUser")
    public Map getUser() {
        HashMap<String, String> map = new HashMap<>();
        map.put("name","zhangsan");
        map.put("addr","武漢市");

        return map;
    }
}

把項目build一下看看能不能啟動

 項目正常啟動,訪問一下接口

 到此基于項目創建模塊也是沒有問題的

后續就是整合cloudAlibaba相關的組件了

nacos

怎么安裝這里就不多說了 請看 Docker安裝nacos(圖文并茂,避免踩坑,一步到位)_docker安裝nacos掛載-CSDN博客

本次用的nacos2.1.0說明一下 cloud的這些組件也是需要對應版本的要不然整合起開會有很多問題

本地啟動一下nacos

 下面是組件整合

test1模塊引入:
<!--naocs客戶端依賴-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

application.yml 整體的配置如下:

server:
  port: 8080
spring:
  application:
    name: test1
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848 #注冊中心地址
        namespace: public # 命名空間 public是默認的

management:
  endpoints:
    web:
      exposure:
        include: "*"

 

啟動一下項目看一下

登錄nacos看看 服務是否注冊完成

http://localhost:8848/nacos

 

 

到此項目整合nacos也完成了
后續再寫 openFegen sentinel getaway seata