Spring Cloud Alibaba 项目搭建

Posted hoho_12

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Cloud Alibaba 项目搭建相关的知识,希望对你有一定的参考价值。

基于上一篇分布式项目搭建中,改造成Spring Cloud Alibaba环境。

分布式项目搭建

主要的改造点在于父maven项目中的pom文件的改造,如下:

<?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>
    <modules>
        <module>order</module>
        <module>stock</module>
    </modules>

    <groupId>com.springcloud.learning</groupId>
    <artifactId>springcloudalibaba</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springcloudalibaba</name>
    <description>Spring Cloud Alibaba</description>
    <packaging>pom</packaging>

    <properties>
        <java.version>1.8</java.version>
        <spring.cloud.alibaba.version>2.2.5.RELEASE</spring.cloud.alibaba.version>
        <spring.boot.version>2.3.11.RELEASE</spring.boot.version>
        <spring.cloud.version>Hoxton.SR8</spring.cloud.version>
    </properties>

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

    <dependencyManagement>

        <dependencies>
            <!--Spring Cloud alibaba的版本管理, 通过dependency完成继承-->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>$spring.cloud.alibaba.version</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!--SpringBoot的版本管理-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-parent</artifactId>
                <version>$spring.boot.version</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!--Spring Cloud的版本管理-->
            <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>

这其中用到了dependencyManagement,可以在其下添加多个不同组件的版本管理器,这样的话就可以释放掉parent这个配置项,这个配置项就可以留给自己公司创建的公共的模块。其次这种配置,子项目进行组件依赖的时候,需要显示声明。

修改过后,页面访问效果:

注意:spring cloud alibaba 组件之间有很强的版本依赖关系。

以上是关于Spring Cloud Alibaba 项目搭建的主要内容,如果未能解决你的问题,请参考以下文章

微服务 Spring Cloud Alibaba 项目搭建(一、框架介绍)

Spring Cloud Alibaba Nacos 实现简单的注册(项目搭建)

微服务 Spring Cloud Alibaba 项目搭建(七RocketMQ 集成)

Spring Cloud Alibaba环境搭建

spring cloud alibaba nacos搭建最小可运行微服务

Spring Cloud Alibaba商城实战项目(day02)