spring-cloud-alibaba最新版本聚合项目创建
1. 创建聚合项目
修改 pom.xml
spring-boot 当前最新版本是 3.4.5
但是 spring-cloud-alibaba 的最新版本是 2023.0.3.2,只适配到 spring-boot 3.2.4 还没有适配到 spring-boot 的 3.4.5 版本。
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><groupId>com.xxl</groupId><artifactId>xxl-room</artifactId><version>1.0.0-SNAPSHOT</version><packaging>pom</packaging><name>xxl-room</name><description>xxl-room</description><properties><java.version>17</java.version><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring.boot.version>3.2.4</spring.boot.version><spring.cloud.version>2023.0.3</spring.cloud.version><spring.cloud.alibaba.version>2023.0.3.2</spring.cloud.alibaba.version></properties><dependencyManagement><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>${spring.cloud.alibaba.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><version>${spring.boot.version}</version></plugin></plugins></build></project>
删除项目中除了 pom.xml 文件的其他内容,效果如下:
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 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>xxl-room</artifactId><groupId>com.xxl</groupId><version>1.0.0-SNAPSHOT</version></parent><artifactId>xxl-gateway-service</artifactId><dependencies><!-- 添加当前项目需要的依赖 --></dependencies></project>
这样就创建好了一个子服务,你的项目还有很多子服务的话(例如用户中心服务 usercenter、会员服务 member 等等服务),就以同样的方式创建即可。
项目效果图如下:
3. 创建组件服务
组件服务是:例如你的项目当中要用到 redis、mq、es、mybatis等等组件,你可以把它们单独创建成组件服务,相关的配置都已经在组件服务配置好了。在子服务需要使用 redis 服务的时候,直接依赖redis组件服务就好了,不需要每个需要使用 redis 的子服务都重新把 redis 的配置再配置一遍。
创建组件聚合服务
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 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>xxl-room</artifactId><groupId>com.xxl</groupId><version>1.0.0-SNAPSHOT</version></parent><packaging>pom</packaging><artifactId>xxl-common</artifactId><dependencies></dependencies></project>
删除项目中除了 pom.xml 文件的其他内容,效果如下:
创建具体的组件服务,例如 redis 组件服务
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 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>xxl-common</artifactId><groupId>com.xxl</groupId><version>1.0.0-SNAPSHOT</version></parent><artifactId>xxl-redis</artifactId><dependencies></dependencies>
</project>
到这里创建最新版的 spring-cloud-alibaba 聚合服务的项目创建就完成了。关于集成spring-cloud-alibaba的组件,请查看当前专栏的其他博客。
整体的项目结构如下: