Files
iboot/pom.xml
T
2025-09-30 17:58:34 +08:00

318 lines
12 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">
<!-- 父模块改成 Spring Boot 3.1.12 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.12</version>
<relativePath/> <!-- 使用远程父POM -->
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.iteaj</groupId>
<artifactId>iboot</artifactId>
<version>${reversion}</version>
<packaging>pom</packaging>
<name>iboot:root</name>
<!-- 子模块 -->
<modules>
<module>framework</module>
<module>bootstrap</module>
<module>iboot-plugin</module>
<module>iboot-tos</module>
</modules>
<properties>
<!-- Java / Maven 编译配置 -->
<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>
<reversion>3.0.0</reversion>
<!-- 版本管理 -->
<springboot.version>3.1.12</springboot.version>
<p6spy.version>3.8.6</p6spy.version>
<kaptcha.version>2.3.2</kaptcha.version>
<iot.version>3.2.0</iot.version>
<sms4j.version>3.2.1</sms4j.version>
<shiro.version>2.0.5</shiro.version>
<hutool.version>5.7.18</hutool.version>
<okhttp3.version>4.5.0</okhttp3.version>
<excelpoi.version>4.3.0</excelpoi.version>
<JustAuth.version>1.16.5</JustAuth.version>
<izone.boot.version>1.2.1</izone.boot.version>
<mybatis.plus.version>3.5.14</mybatis.plus.version>
<mybatis.plus.ds.version>3.6.1</mybatis.plus.ds.version>
<fastjson.version>1.2.83</fastjson.version>
<fastjson2.version>2.0.59</fastjson2.version>
<!-- 插件版本 -->
<knife4j.version>4.5.0</knife4j.version>
<SaToken.version>1.37.0</SaToken.version>
</properties>
<!-- 仓库 -->
<repositories>
<repository>
<id>aliMaven</id>
<name>AliYun Maven</name>
<url>https://maven.aliyun.com/repository/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>false</enabled></snapshots>
</repository>
</repositories>
<!-- 依赖管理 -->
<dependencyManagement>
<dependencies>
<!-- iot -->
<dependency>
<groupId>com.iteaj</groupId>
<artifactId>iot-boot-starter</artifactId>
<version>${iot.version}</version>
</dependency>
<dependency>
<groupId>com.iteaj</groupId>
<artifactId>iot-server</artifactId>
<version>${iot.version}</version>
</dependency>
<dependency>
<groupId>com.iteaj</groupId>
<artifactId>iot-client</artifactId>
<version>${iot.version}</version>
</dependency>
<dependency>
<groupId>com.iteaj</groupId>
<artifactId>iot-modbus</artifactId>
<version>${iot.version}</version>
</dependency>
<dependency>
<groupId>com.iteaj</groupId>
<artifactId>iot-mqtt</artifactId>
<version>${iot.version}</version>
</dependency>
<dependency>
<groupId>com.iteaj</groupId>
<artifactId>iot-serial</artifactId>
<version>${iot.version}</version>
</dependency>
<!-- MyBatis-Plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>${mybatis.plus.version}</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>com.baomidou</groupId>-->
<!-- <artifactId>mybatis-plus-extension</artifactId>-->
<!-- <version>${mybatis.plus.version}</version>-->
<!-- </dependency>-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-jsqlparser</artifactId>
<version>${mybatis.plus.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba.fastjson2/fastjson2 -->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
<version>${fastjson2.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>${mybatis.plus.version}</version>
</dependency>
<!-- Shiro -->
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
<version>${shiro.version}</version>
<classifier>jakarta</classifier>
</dependency>
<!-- Knife4j -->
<!-- <dependency>-->
<!-- <groupId>com.github.xiaoymin</groupId>-->
<!-- <artifactId>knife4j-aggregation-spring-boot-starter</artifactId>-->
<!-- <version>${knife4j.version}</version>-->
<!-- </dependency>-->
<!-- https://mvnrepository.com/artifact/com.github.xiaoymin/knife4j-gateway-spring-boot-starter -->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
<version>${knife4j.version}</version>
</dependency>
<!-- SaToken -->
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-oauth2</artifactId>
<version>${SaToken.version}</version>
</dependency>
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-spring-boot3-starter</artifactId>
<version>${SaToken.version}</version>
</dependency>
<dependency>
<groupId>cn.dev33</groupId>
<artifactId>sa-token-redis-jackson</artifactId>
<version>${SaToken.version}</version>
</dependency>
<!-- JustAuth -->
<dependency>
<groupId>me.zhyd.oauth</groupId>
<artifactId>JustAuth</artifactId>
<version>${JustAuth.version}</version>
</dependency>
<!-- SMS / Email -->
<dependency>
<groupId>org.dromara.sms4j</groupId>
<artifactId>sms4j-core</artifactId>
<version>${sms4j.version}</version>
</dependency>
<dependency>
<groupId>org.dromara.sms4j</groupId>
<artifactId>sms4j-Email-core</artifactId>
<version>${sms4j.version}</version>
<exclusions>
<exclusion>
<groupId>cn.hutool</groupId>
<artifactId>hutool-http</artifactId>
</exclusion>
<exclusion>
<groupId>cn.hutool</groupId>
<artifactId>hutool-cron</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</dependencyManagement>
<!-- 全局依赖 -->
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-jwt</artifactId>
<version>${hutool.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.1.0</version>
</dependency>
<dependency>
<scope>provided</scope>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.42</version>
</dependency>
<dependency>
<groupId>com.github.penggle</groupId>
<artifactId>kaptcha</artifactId>
<version>${kaptcha.version}</version>
</dependency>
</dependencies>
<!-- 构建配置 -->
<build>
<finalName>${project.artifactId}</finalName>
<pluginManagement>
<plugins>
<!-- 编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.14.1</version>
<configuration>
<encoding>UTF-8</encoding>
<release>${java.version}</release>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<!-- Spring Boot Maven 插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${springboot.version}</version>
<configuration>
<mainClass>com.iteaj.iboot.boot.IBootApplication</mainClass>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- OpenRewrite 升级 Spring Boot -->
<plugin>
<groupId>org.openrewrite.maven</groupId>
<artifactId>rewrite-maven-plugin</artifactId>
<version>6.19.0</version>
<configuration>
<activeRecipes>
<recipe>com.iteaj.migrate.SpringBoot3Migration</recipe>
</activeRecipes>
</configuration>
<dependencies>
<dependency>
<groupId>org.openrewrite.recipe</groupId>
<artifactId>rewrite-spring</artifactId>
<version>6.15.0</version>
</dependency>
<dependency>
<groupId>org.openrewrite.recipe</groupId>
<artifactId>rewrite-migrate-java</artifactId>
<version>3.18.0</version>
</dependency>
</dependencies>
</plugin>
<!-- Flatten 插件 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
<version>1.2.7</version>
<configuration>
<updatePomFile>true</updatePomFile>
<flattenMode>resolveCiFriendliesOnly</flattenMode>
</configuration>
<executions>
<execution>
<id>flatten</id>
<phase>process-resources</phase>
<goals><goal>flatten</goal></goals>
</execution>
<execution>
<id>flatten.clean</id>
<phase>clean</phase>
<goals><goal>clean</goal></goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>