主要变更: - 新增阿里云 IMM SDK 依赖 (imm20200930 v1.28.3) - 新增 IMM 配置类 (ImmConfig, ImmUtil, ImmController, ImmTokenVo) - 新增前端 API 生成文件 (imm.api.ts) - 更新 WebOffice.vue 使用新的 imm.api 导入 配置优化: - 三环境 (dev/test/prod) 均开启 OSS CORS 跨域支持 - 添加 IMM 服务配置 (endpoint, region, project, 密钥) - 测试/开发环境跨域域名设置为通配符 技术栈: - 后端:Spring Boot + 阿里云 IMM SDK - 前端:Vue 3 + TypeScript API 生成 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
235 lines
8.0 KiB
XML
235 lines
8.0 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>
|
|
|
|
<parent>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>3.2.3</version>
|
|
<relativePath/>
|
|
</parent>
|
|
|
|
<groupId>com.reading</groupId>
|
|
<artifactId>reading-platform</artifactId>
|
|
<version>1.0.0</version>
|
|
<packaging>jar</packaging>
|
|
<name>reading-platform</name>
|
|
<description>Reading Platform Backend Service</description>
|
|
|
|
<properties>
|
|
<java.version>17</java.version>
|
|
<maven.compiler.source>17</maven.compiler.source>
|
|
<maven.compiler.target>17</maven.compiler.target>
|
|
<maven.compiler.release>17</maven.compiler.release>
|
|
<mybatis-plus.version>3.5.5</mybatis-plus.version>
|
|
<jjwt.version>0.12.5</jjwt.version>
|
|
<knife4j.version>4.4.0</knife4j.version>
|
|
<hutool.version>5.8.26</hutool.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<!-- Spring Boot Starters -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-validation</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-security</artifactId>
|
|
</dependency>
|
|
|
|
<!-- MyBatis-Plus -->
|
|
<dependency>
|
|
<groupId>com.baomidou</groupId>
|
|
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
|
|
<version>${mybatis-plus.version}</version>
|
|
</dependency>
|
|
|
|
<!-- MySQL Driver -->
|
|
<dependency>
|
|
<groupId>com.mysql</groupId>
|
|
<artifactId>mysql-connector-j</artifactId>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
|
|
<!-- JWT -->
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-api</artifactId>
|
|
<version>${jjwt.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-impl</artifactId>
|
|
<version>${jjwt.version}</version>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.jsonwebtoken</groupId>
|
|
<artifactId>jjwt-jackson</artifactId>
|
|
<version>${jjwt.version}</version>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
|
|
<!-- Knife4j (Swagger) -->
|
|
<dependency>
|
|
<groupId>com.github.xiaoymin</groupId>
|
|
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
|
|
<version>${knife4j.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Hutool Utilities -->
|
|
<dependency>
|
|
<groupId>cn.hutool</groupId>
|
|
<artifactId>hutool-all</artifactId>
|
|
<version>${hutool.version}</version>
|
|
</dependency>
|
|
|
|
<!-- MapStruct -->
|
|
<dependency>
|
|
<groupId>org.mapstruct</groupId>
|
|
<artifactId>mapstruct</artifactId>
|
|
<version>1.5.5.Final</version>
|
|
</dependency>
|
|
|
|
<!-- Lombok MapStruct Binding -->
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok-mapstruct-binding</artifactId>
|
|
<version>0.2.0</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
|
|
<!-- Lombok -->
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
|
|
<!-- AspectJ -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-aop</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Redis -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-redis</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-cache</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Druid 连接池 -->
|
|
<dependency>
|
|
<groupId>com.alibaba</groupId>
|
|
<artifactId>druid-spring-boot-3-starter</artifactId>
|
|
<version>1.2.21</version>
|
|
</dependency>
|
|
|
|
<!-- FastJSON -->
|
|
<dependency>
|
|
<groupId>com.alibaba.fastjson2</groupId>
|
|
<artifactId>fastjson2</artifactId>
|
|
<version>2.0.43</version>
|
|
</dependency>
|
|
|
|
<!-- Aliyun OSS SDK -->
|
|
<dependency>
|
|
<groupId>com.aliyun.oss</groupId>
|
|
<artifactId>aliyun-sdk-oss</artifactId>
|
|
<version>3.17.1</version>
|
|
</dependency>
|
|
<!-- Aliyun IMM SDK -->
|
|
<dependency>
|
|
<groupId>com.aliyun</groupId>
|
|
<artifactId>imm20200930</artifactId>
|
|
<version>1.28.3</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.alibaba.fastjson2</groupId>
|
|
<artifactId>fastjson2-extension-spring6</artifactId>
|
|
<version>2.0.43</version>
|
|
</dependency>
|
|
|
|
<!-- Flyway -->
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-core</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-mysql</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Test -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.security</groupId>
|
|
<artifactId>spring-security-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.11.0</version>
|
|
<configuration>
|
|
<source>17</source>
|
|
<target>17</target>
|
|
<encoding>UTF-8</encoding>
|
|
<compilerArgs>
|
|
<arg>-parameters</arg>
|
|
</compilerArgs>
|
|
<annotationProcessorPaths>
|
|
<path>
|
|
<groupId>org.mapstruct</groupId>
|
|
<artifactId>mapstruct-processor</artifactId>
|
|
<version>1.5.5.Final</version>
|
|
</path>
|
|
<path>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>1.18.30</version>
|
|
</path>
|
|
<path>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok-mapstruct-binding</artifactId>
|
|
<version>0.2.0</version>
|
|
</path>
|
|
</annotationProcessorPaths>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
<configuration>
|
|
<excludes>
|
|
<exclude>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
</project>
|