406 lines
17 KiB
XML
406 lines
17 KiB
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>
|
||
|
||
<!-- 项目组织名称 -->
|
||
<groupId>com.xiaomayi</groupId>
|
||
<!-- 项目名称 -->
|
||
<artifactId>xiaomayi</artifactId>
|
||
<!-- 项目版本号 -->
|
||
<version>${revision}</version>
|
||
<!-- 项目打包类型:POM代表父级分模块管理 -->
|
||
<packaging>pom</packaging>
|
||
<!-- 项目名称 -->
|
||
<name>${project.artifactId}</name>
|
||
<!-- 项目描述 -->
|
||
<description>小蚂蚁云微服务后台管理系统</description>
|
||
|
||
<!-- 模块管理 -->
|
||
<modules>
|
||
<module>xiaomayi-auth</module>
|
||
<module>xiaomayi-gateway</module>
|
||
<module>xiaomayi-modules</module>
|
||
<module>xiaomayi-services</module>
|
||
<module>xiaomayi-visual</module>
|
||
<module>xiaomayi-common</module>
|
||
</modules>
|
||
|
||
<!-- 依赖版本管理 -->
|
||
<properties>
|
||
<!-- 全局版本号(实际项目使用时可自定义) -->
|
||
<revision>3.0.0</revision>
|
||
<!-- JDK版本号 -->
|
||
<java.version>17</java.version>
|
||
<!-- spring-cloud 微服务依赖版本,此版本支持:3.3.x、3.2.x -->
|
||
<spring-cloud.version>2023.0.3</spring-cloud.version>
|
||
<!-- spring-boot依赖版本号(备注:v3.3.0更新于20240523) -->
|
||
<spring-boot.version>3.3.0</spring-boot.version>
|
||
<!-- 指定源代码使用的JDK版本 -->
|
||
<maven.compiler.source>17</maven.compiler.source>
|
||
<!-- 指定class文件的编译版本 -->
|
||
<maven.compiler.target>17</maven.compiler.target>
|
||
<!-- 设置工程构建编码 -->
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||
<!-- 设置编译时JDK的版本 -->
|
||
<maven.compiler.compilerVersion>17</maven.compiler.compilerVersion>
|
||
<!-- 设置编码插件版本号 -->
|
||
<maven.compiler.version>3.8.1</maven.compiler.version>
|
||
<!-- 指定字符集编码 -->
|
||
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
|
||
<!-- flatten版本统一管理插件版本号 -->
|
||
<flatten-maven-plugin.version>1.6.0</flatten-maven-plugin.version>
|
||
</properties>
|
||
|
||
<!-- 全局编译环境变量 -->
|
||
<profiles>
|
||
<!-- 本地开发环境 -->
|
||
<profile>
|
||
<id>local</id>
|
||
<properties>
|
||
<!-- 本地环境分支定义 -->
|
||
<package.environment>local</package.environment>
|
||
<!-- nacos注册配置中心服务地址 -->
|
||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||
<!-- nacos服务注册分组 -->
|
||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||
<!-- nacos服务配置分组 -->
|
||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||
<!-- nacos登录账号 -->
|
||
<nacos.username>nacos</nacos.username>
|
||
<!-- nacos登录密码 -->
|
||
<nacos.password>nacos</nacos.password>
|
||
<!-- ELK日志收集服务地址 -->
|
||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||
</properties>
|
||
<activation>
|
||
<!-- 设置默认开启本地环境 -->
|
||
<activeByDefault>true</activeByDefault>
|
||
</activation>
|
||
</profile>
|
||
<!-- 开发环境 -->
|
||
<profile>
|
||
<id>dev</id>
|
||
<properties>
|
||
<!-- 开发环境分支定义 -->
|
||
<package.environment>dev</package.environment>
|
||
<!-- nacos注册配置中心服务地址 -->
|
||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||
<!-- nacos服务注册分组 -->
|
||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||
<!-- nacos服务配置分组 -->
|
||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||
<!-- nacos登录账号 -->
|
||
<nacos.username>nacos</nacos.username>
|
||
<!-- nacos登录密码 -->
|
||
<nacos.password>nacos</nacos.password>
|
||
<!-- ELK日志收集服务地址 -->
|
||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||
</properties>
|
||
</profile>
|
||
<!-- 测试环境 -->
|
||
<profile>
|
||
<id>test</id>
|
||
<properties>
|
||
<!-- 测试环境分支定义 -->
|
||
<package.environment>test</package.environment>
|
||
<!-- nacos注册配置中心服务地址 -->
|
||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||
<!-- nacos服务注册分组 -->
|
||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||
<!-- nacos服务配置分组 -->
|
||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||
<!-- nacos登录账号 -->
|
||
<nacos.username>nacos</nacos.username>
|
||
<!-- nacos登录密码 -->
|
||
<nacos.password>nacos</nacos.password>
|
||
<!-- ELK日志收集服务地址 -->
|
||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||
</properties>
|
||
</profile>
|
||
<!-- 预发布环境 -->
|
||
<profile>
|
||
<id>uat</id>
|
||
<properties>
|
||
<!-- 预发布环境分支定义 -->
|
||
<package.environment>uat</package.environment>
|
||
<!-- nacos注册配置中心服务地址 -->
|
||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||
<!-- nacos服务注册分组 -->
|
||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||
<!-- nacos服务配置分组 -->
|
||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||
<!-- nacos登录账号 -->
|
||
<nacos.username>nacos</nacos.username>
|
||
<!-- nacos登录密码 -->
|
||
<nacos.password>nacos</nacos.password>
|
||
<!-- ELK日志收集服务地址 -->
|
||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||
</properties>
|
||
</profile>
|
||
<!-- 生产环境 -->
|
||
<profile>
|
||
<id>prod</id>
|
||
<properties>
|
||
<!-- 生产环境分支定义 -->
|
||
<package.environment>prod</package.environment>
|
||
<!-- nacos注册配置中心服务地址 -->
|
||
<nacos.server>127.0.0.1:8848</nacos.server>
|
||
<!-- nacos服务注册分组 -->
|
||
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
|
||
<!-- nacos服务配置分组 -->
|
||
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
|
||
<!-- nacos登录账号 -->
|
||
<nacos.username>nacos</nacos.username>
|
||
<!-- nacos登录密码 -->
|
||
<nacos.password>nacos</nacos.password>
|
||
<!-- ELK日志收集服务地址 -->
|
||
<logstash.address>127.0.0.1:4560</logstash.address>
|
||
</properties>
|
||
</profile>
|
||
</profiles>
|
||
|
||
<!-- 依赖管理 -->
|
||
<dependencyManagement>
|
||
<!-- 依赖声明 -->
|
||
<dependencies>
|
||
<!-- 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>
|
||
<!-- spring-boot 公共依赖 -->
|
||
<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>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-alibaba</artifactId>
|
||
<version>${revision}</version>
|
||
<type>pom</type>
|
||
<scope>import</scope>
|
||
</dependency>
|
||
<!-- 核心类库公共版本定义 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-all</artifactId>
|
||
<version>${revision}</version>
|
||
<type>pom</type>
|
||
<scope>import</scope>
|
||
</dependency>
|
||
<!-- 系统服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-system-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 用户服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-user-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- CMS内容服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-community-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 后台服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-admin-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 网站服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-web-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 用户中心服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-ucenter-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 商家服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-merchant-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 客户端服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-mobile-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 订单服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-order-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 商品服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-goods-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
<!-- 案例服务API模块 -->
|
||
<dependency>
|
||
<groupId>com.xiaomayi</groupId>
|
||
<artifactId>xiaomayi-example-api</artifactId>
|
||
<version>${revision}</version>
|
||
</dependency>
|
||
</dependencies>
|
||
</dependencyManagement>
|
||
|
||
<!-- 编译打包 -->
|
||
<build>
|
||
<!-- 设置应用打包名称 -->
|
||
<finalName>${project.name}</finalName>
|
||
<!-- 插件管理 -->
|
||
<plugins>
|
||
<!-- 配置当前项目的jdk版本信息 -->
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-compiler-plugin</artifactId>
|
||
<version>${maven.compiler.version}</version>
|
||
<configuration>
|
||
<!-- 编译时参数选项 -->
|
||
<parameters>true</parameters>
|
||
<!-- 输出编译详细细节 -->
|
||
<verbose>false</verbose>
|
||
<!-- 指定编码 -->
|
||
<encoding>UTF-8</encoding>
|
||
<!-- 指定源代码使用的JDK版本 -->
|
||
<target>${maven.compiler.target}</target>
|
||
<!-- 指定class文件的编译版本 -->
|
||
<source>${maven.compiler.source}</source>
|
||
<!-- 指定字符集编码 -->
|
||
<encoding>${maven.compiler.encoding}</encoding>
|
||
<!-- 设置编译时JDK版本号 -->
|
||
<compilerVersion>${maven.compiler.compilerVersion}</compilerVersion>
|
||
<!-- 设置跳过 -->
|
||
<skip>true</skip>
|
||
</configuration>
|
||
</plugin>
|
||
<!-- flatten统一管理版本号 -->
|
||
<plugin>
|
||
<!-- 使用flatten-maven-plugin插件 -->
|
||
<groupId>org.codehaus.mojo</groupId>
|
||
<artifactId>flatten-maven-plugin</artifactId>
|
||
<version>${flatten-maven-plugin.version}</version>
|
||
|
||
<!-- 插件配置 -->
|
||
<configuration>
|
||
<!-- 更新原始pom.xml文件(如果为true,会修改原pom;通常建议为false) -->
|
||
<updatePomFile>true</updatePomFile>
|
||
<!-- 扁平化模式:仅解析CI/CD友好的动态版本变量 -->
|
||
<flattenMode>resolveCiFriendliesOnly</flattenMode>
|
||
<!-- 定义POM文件中哪些元素需要被解析和扁平化处理 -->
|
||
<pomElements>
|
||
<!-- 解析版本号,替换占位符为实际值 -->
|
||
<version>resolve</version>
|
||
<!-- 解析groupId,替换占位符为实际值 -->
|
||
<groupId>resolve</groupId>
|
||
<!-- 解析artifactId,替换占位符为实际值 -->
|
||
<artifactId>resolve</artifactId>
|
||
<!-- 解析依赖声明,替换依赖中的占位符为实际值 -->
|
||
<dependencies>resolve</dependencies>
|
||
<!-- 解析依赖管理部分,替换其中的占位符为实际值 -->
|
||
<dependencyManagement>resolve</dependencyManagement>
|
||
<!-- 解析properties属性,替换属性值为实际值 -->
|
||
<properties>resolve</properties>
|
||
<!-- 解析父POM引用,确保父POM信息被正确解析 -->
|
||
<parent>resolve</parent>
|
||
</pomElements>
|
||
</configuration>
|
||
|
||
<!-- 插件执行配置 -->
|
||
<executions>
|
||
<!-- 第一个执行目标:执行扁平化操作 -->
|
||
<execution>
|
||
<id>flatten</id>
|
||
<!-- 在process-resources阶段执行(修改后的阶段) -->
|
||
<phase>process-resources</phase>
|
||
<goals>
|
||
<!-- 执行flatten目标,生成扁平化的POM文件 -->
|
||
<goal>flatten</goal>
|
||
</goals>
|
||
</execution>
|
||
|
||
<!-- 第二个执行目标:清理扁平化生成的文件 -->
|
||
<execution>
|
||
<id>flatten.clean</id>
|
||
<!-- 在clean阶段执行 -->
|
||
<phase>clean</phase>
|
||
<goals>
|
||
<!-- 执行clean目标,清理生成的扁平化POM文件 -->
|
||
<goal>clean</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
</plugins>
|
||
<!-- 资源配置 -->
|
||
<resources>
|
||
<resource>
|
||
<directory>src/main/resources</directory>
|
||
<!-- 关闭过滤 -->
|
||
<filtering>false</filtering>
|
||
</resource>
|
||
<resource>
|
||
<directory>src/main/webapp/</directory>
|
||
</resource>
|
||
<resource>
|
||
<directory>src/main/resources</directory>
|
||
<!-- 开启过滤,即该资源中的变量将会被过滤器中的值替换 -->
|
||
<filtering>true</filtering>
|
||
<!-- 引入所有,匹配文件进行过滤 -->
|
||
<includes>
|
||
<include>application*</include>
|
||
<include>bootstrap*</include>
|
||
<include>logback*</include>
|
||
</includes>
|
||
</resource>
|
||
</resources>
|
||
</build>
|
||
|
||
<repositories>
|
||
<repository>
|
||
<id>public</id>
|
||
<name>aliyun nexus</name>
|
||
<url>https://maven.aliyun.com/repository/public</url>
|
||
<releases>
|
||
<enabled>true</enabled>
|
||
</releases>
|
||
</repository>
|
||
</repositories>
|
||
|
||
<pluginRepositories>
|
||
<pluginRepository>
|
||
<id>public</id>
|
||
<name>aliyun nexus</name>
|
||
<url>https://maven.aliyun.com/repository/public</url>
|
||
<releases>
|
||
<enabled>true</enabled>
|
||
</releases>
|
||
<snapshots>
|
||
<enabled>false</enabled>
|
||
</snapshots>
|
||
</pluginRepository>
|
||
</pluginRepositories>
|
||
|
||
</project> |