mirror of
http://git.pig4cloud.com/pig/pigx.git
synced 2026-11-08 04:39:00 +08:00
358 lines
15 KiB
XML
358 lines
15 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
|
||
<!--
|
||
~
|
||
~ Copyright (c) 2018-2025, lengleng All rights reserved.
|
||
~
|
||
~ Redistribution and use in source and binary forms, with or without
|
||
~ modification, are permitted provided that the following conditions are met:
|
||
~
|
||
~ Redistributions of source code must retain the above copyright notice,
|
||
~ this list of conditions and the following disclaimer.
|
||
~ Redistributions in binary form must reproduce the above copyright
|
||
~ notice, this list of conditions and the following disclaimer in the
|
||
~ documentation and/or other materials provided with the distribution.
|
||
~ Neither the name of the pig4cloud.com developer nor the names of its
|
||
~ contributors may be used to endorse or promote products derived from
|
||
~ this software without specific prior written permission.
|
||
~ Author: lengleng (wangiegie@gmail.com)
|
||
~
|
||
-->
|
||
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
|
||
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.pig4cloud</groupId>
|
||
<artifactId>pigx</artifactId>
|
||
<version>6.2.0</version>
|
||
<name>${project.artifactId}</name>
|
||
<packaging>pom</packaging>
|
||
<organization>
|
||
<name>pig4cloud</name>
|
||
<url>https://www.pig4cloud.com</url>
|
||
</organization>
|
||
|
||
<properties>
|
||
<skipTests>true</skipTests>
|
||
<spring-boot.version>4.1.2</spring-boot.version>
|
||
<spring-cloud.version>2025.1.4</spring-cloud.version>
|
||
<spring-cloud-alibaba.version>2025.1.0.0</spring-cloud-alibaba.version>
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||
<maven.compiler.source>17</maven.compiler.source>
|
||
<maven.compiler.target>17</maven.compiler.target>
|
||
<spring-boot-admin.version>4.1.2</spring-boot-admin.version>
|
||
<maven.compiler.version>3.14.1</maven.compiler.version>
|
||
<maven-deploy-plugin.version>3.1.4</maven-deploy-plugin.version>
|
||
<maven-surefire-plugin.version>3.6.1</maven-surefire-plugin.version>
|
||
<spring.checkstyle.version>0.0.47</spring.checkstyle.version>
|
||
<git.commit.version>10.0.1</git.commit.version>
|
||
<cas.sdk.version>3.6.4</cas.sdk.version>
|
||
<flowable.version>8.0.0</flowable.version>
|
||
<dingtalk.old.version>2.0.0</dingtalk.old.version>
|
||
<swagger.fox.version>3.0.0</swagger.fox.version>
|
||
<knife4j.version>3.0.5</knife4j.version>
|
||
<jasypt.version>4.0.4</jasypt.version>
|
||
<ttl.version>2.12.6</ttl.version>
|
||
<jimu.version>2.5.4</jimu.version>
|
||
<aws.sdk.version>2.55.3</aws.sdk.version>
|
||
<xxl.job.version>3.4.2</xxl.job.version>
|
||
<docker.registry>registry.cn-hangzhou.aliyuncs.com</docker.registry>
|
||
<docker.host>http://127.0.0.1:2375</docker.host>
|
||
<docker.namespace>pigcloudx</docker.namespace>
|
||
<docker.username>佩小格科技</docker.username>
|
||
<docker.password>qq123456</docker.password>
|
||
<docker.plugin.version>0.33.0</docker.plugin.version>
|
||
<!-- 默认忽略docker构建 -->
|
||
<docker.skip>false</docker.skip>
|
||
</properties>
|
||
|
||
<dependencies>
|
||
<!--配置文件处理器-->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-configuration-processor</artifactId>
|
||
<optional>true</optional>
|
||
</dependency>
|
||
<!--jasypt配置文件加解密-->
|
||
<dependency>
|
||
<groupId>com.github.ulisesbocchio</groupId>
|
||
<artifactId>jasypt-spring-boot-starter</artifactId>
|
||
<version>${jasypt.version}</version>
|
||
</dependency>
|
||
<!--监控-->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-actuator</artifactId>
|
||
</dependency>
|
||
<!--监控客户端-->
|
||
<dependency>
|
||
<groupId>de.codecentric</groupId>
|
||
<artifactId>spring-boot-admin-starter-client</artifactId>
|
||
<version>${spring-boot-admin.version}</version>
|
||
</dependency>
|
||
<!--Lombok-->
|
||
<dependency>
|
||
<groupId>org.projectlombok</groupId>
|
||
<artifactId>lombok</artifactId>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
<!--测试依赖-->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-test</artifactId>
|
||
<scope>test</scope>
|
||
</dependency>
|
||
</dependencies>
|
||
|
||
<modules>
|
||
<module>pigx-register</module>
|
||
<module>pigx-gateway</module>
|
||
<module>pigx-auth</module>
|
||
<module>pigx-upms</module>
|
||
<module>pigx-common</module>
|
||
<module>pigx-flow</module>
|
||
<module>pigx-visual</module>
|
||
<module>pigx-app-server</module>
|
||
</modules>
|
||
|
||
<dependencyManagement>
|
||
<dependencies>
|
||
<!--pigx 公共版本定义-->
|
||
<dependency>
|
||
<groupId>com.pig4cloud</groupId>
|
||
<artifactId>pigx-common-bom</artifactId>
|
||
<version>${project.version}</version>
|
||
<type>pom</type>
|
||
<scope>import</scope>
|
||
</dependency>
|
||
<!--AWS SDK v2 公共版本定义-->
|
||
<dependency>
|
||
<groupId>software.amazon.awssdk</groupId>
|
||
<artifactId>bom</artifactId>
|
||
<version>${aws.sdk.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>
|
||
<!--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 cloud alibaba-->
|
||
<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>
|
||
<!-- 适配 spring cloud alibaba 2023 临时之举 -->
|
||
<dependency>
|
||
<groupId>com.alibaba.cloud</groupId>
|
||
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
|
||
<version>${spring-cloud-alibaba.version}</version>
|
||
<exclusions>
|
||
<exclusion>
|
||
<artifactId>logback-adapter</artifactId>
|
||
<groupId>com.alibaba.nacos</groupId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
<!--web 模块-->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-webmvc</artifactId>
|
||
<version>${spring-boot.version}</version>
|
||
</dependency>
|
||
</dependencies>
|
||
</dependencyManagement>
|
||
|
||
<build>
|
||
<finalName>${project.name}</finalName>
|
||
<resources>
|
||
<resource>
|
||
<directory>src/main/resources</directory>
|
||
<filtering>true</filtering>
|
||
</resource>
|
||
</resources>
|
||
<pluginManagement>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-deploy-plugin</artifactId>
|
||
<version>${maven-deploy-plugin.version}</version>
|
||
</plugin>
|
||
<!--固定 surefire 版本:3.6.0 在 TCCL 为 null 时 NPE(SUREFIRE-3460),会打断 JDK 25 下 Mockito 动态加载 agent-->
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-surefire-plugin</artifactId>
|
||
<version>${maven-surefire-plugin.version}</version>
|
||
</plugin>
|
||
<!--spring boot 默认插件-->
|
||
<plugin>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||
<version>${spring-boot.version}</version>
|
||
<executions>
|
||
<execution>
|
||
<goals>
|
||
<goal>repackage</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
<!--maven docker 打包插件 -->
|
||
<plugin>
|
||
<groupId>io.fabric8</groupId>
|
||
<artifactId>docker-maven-plugin</artifactId>
|
||
<version>${docker.plugin.version}</version>
|
||
<configuration>
|
||
<dockerHost>${docker.host}</dockerHost>
|
||
<registry>${docker.registry}</registry>
|
||
<authConfig>
|
||
<push>
|
||
<username>${docker.username}</username>
|
||
<password>${docker.password}</password>
|
||
</push>
|
||
</authConfig>
|
||
<images>
|
||
<image>
|
||
<name>${docker.registry}/${docker.namespace}/${project.name}:${project.version}</name>
|
||
<build>
|
||
<dockerFile>${project.basedir}/Dockerfile</dockerFile>
|
||
</build>
|
||
</image>
|
||
</images>
|
||
</configuration>
|
||
</plugin>
|
||
</plugins>
|
||
</pluginManagement>
|
||
<plugins>
|
||
<!--代码格式插件,默认使用spring 规则-->
|
||
<plugin>
|
||
<groupId>io.spring.javaformat</groupId>
|
||
<artifactId>spring-javaformat-maven-plugin</artifactId>
|
||
<version>${spring.checkstyle.version}</version>
|
||
</plugin>
|
||
<!--代码编译指定版本插件-->
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-compiler-plugin</artifactId>
|
||
<version>${maven.compiler.version}</version>
|
||
<configuration>
|
||
<target>${maven.compiler.target}</target>
|
||
<source>${maven.compiler.source}</source>
|
||
<release>${maven.compiler.source}</release>
|
||
<encoding>UTF-8</encoding>
|
||
<parameters>true</parameters>
|
||
</configuration>
|
||
</plugin>
|
||
<!--打包关联最新 git commit 信息插件-->
|
||
<plugin>
|
||
<groupId>io.github.git-commit-id</groupId>
|
||
<artifactId>git-commit-id-maven-plugin</artifactId>
|
||
<version>${git.commit.version}</version>
|
||
<executions>
|
||
<execution>
|
||
<id>get-the-git-infos</id>
|
||
<goals>
|
||
<goal>revision</goal>
|
||
</goals>
|
||
<phase>validate</phase> <!-- 或者使用 prepare-package -->
|
||
</execution>
|
||
</executions>
|
||
<configuration>
|
||
<failOnNoGitDirectory>false</failOnNoGitDirectory>
|
||
<generateGitPropertiesFile>true</generateGitPropertiesFile>
|
||
<!--因为项目定制了jackson的日期时间序列化/反序列化格式,因此这里要进行配置,不然通过management.info.git.mode=full进行完整git信息监控时会存在问题-->
|
||
<dateFormat>yyyy-MM-dd HH:mm:ss</dateFormat>
|
||
<includeOnlyProperties>
|
||
<includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
|
||
<includeOnlyProperty>^git.commit.(id|message|time).*$</includeOnlyProperty>
|
||
</includeOnlyProperties>
|
||
</configuration>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
|
||
<profiles>
|
||
<profile>
|
||
<id>cloud</id>
|
||
<properties>
|
||
<!-- 环境标识,需要与配置文件的名称相对应 -->
|
||
<profiles.active>dev</profiles.active>
|
||
<nacos.username>nacos</nacos.username>
|
||
<nacos.password>nacos</nacos.password>
|
||
</properties>
|
||
<activation>
|
||
<!-- 默认环境 -->
|
||
<activeByDefault>true</activeByDefault>
|
||
</activation>
|
||
</profile>
|
||
<profile>
|
||
<id>boot</id>
|
||
<modules>
|
||
<module>pigx-boot</module>
|
||
</modules>
|
||
</profile>
|
||
<!-- JDK 25+ 避免 Sentinel BOM 引入不兼容的旧版 Byte Buddy -->
|
||
<profile>
|
||
<id>jdk25-byte-buddy</id>
|
||
<activation>
|
||
<jdk>[25,)</jdk>
|
||
</activation>
|
||
<properties>
|
||
<byte-buddy.version>1.18.11</byte-buddy.version>
|
||
</properties>
|
||
<dependencyManagement>
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>net.bytebuddy</groupId>
|
||
<artifactId>byte-buddy</artifactId>
|
||
<version>${byte-buddy.version}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>net.bytebuddy</groupId>
|
||
<artifactId>byte-buddy-agent</artifactId>
|
||
<version>${byte-buddy.version}</version>
|
||
</dependency>
|
||
</dependencies>
|
||
</dependencyManagement>
|
||
</profile>
|
||
<!-- JDK 25+ 默认关闭注解处理器自动发现,需要显式声明 Lombok -->
|
||
<profile>
|
||
<id>jdk25-annotation-processor</id>
|
||
<activation>
|
||
<jdk>[25,)</jdk>
|
||
</activation>
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-compiler-plugin</artifactId>
|
||
<configuration>
|
||
<annotationProcessorPaths>
|
||
<path>
|
||
<groupId>org.projectlombok</groupId>
|
||
<artifactId>lombok</artifactId>
|
||
</path>
|
||
</annotationProcessorPaths>
|
||
</configuration>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
</profile>
|
||
</profiles>
|
||
</project>
|