mirror of
https://gitee.com/dromara/dax-pay
synced 2026-08-12 15:35:38 +08:00
根 pom 删 netty.version=4.1.135 覆盖,恢复 Boot 4.1 默认 netty 4.2.15; common-artemis 删 artemis-jms-server 依赖(fat jar 不再含 EmbeddedActiveMQ, Spring Boot @ConditionalOnClass 自动跳过 embedded 装配); application-dev/prod.yml 删 spring.artemis.embedded 段,mode 固定 native。 根因:netty 4.1 降级曾为修 JDK25+Artemis embedded 的 CleanerJava25 崩溃, 但 Lettuce 7.5.2 针对 netty 4.2 编译,Linux epoll 路径引用 MultiThreadIoEventLoopGroup(4.2 新基类)致 NoClassDefFoundError; 移除 embedded 消除 CleanerJava25 触发点后 netty 恢复 4.2,Lettuce 正常。
96 lines
4.2 KiB
XML
96 lines
4.2 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 https://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>4.1.0</version>
|
||
<relativePath/>
|
||
</parent>
|
||
|
||
<groupId>cn.daxpay.open</groupId>
|
||
<artifactId>daxpay</artifactId>
|
||
<version>4.0.0-beta3</version>
|
||
<packaging>pom</packaging>
|
||
|
||
<name>dax-pay-open</name>
|
||
<description>DaxPay开源版支付系统</description>
|
||
|
||
<!-- 开源协议:GNU LGPL v3.0 或更高版本 -->
|
||
<licenses>
|
||
<license>
|
||
<name>GNU Lesser General Public License v3.0 or later</name>
|
||
<url>https://www.gnu.org/licenses/lgpl-3.0.txt</url>
|
||
<distribution>repo</distribution>
|
||
</license>
|
||
</licenses>
|
||
|
||
<modules>
|
||
<module>daxpay-platform</module>
|
||
<module>daxpay-payment</module>
|
||
<module>daxpay-channel</module>
|
||
<module>daxpay-start</module>
|
||
<module>daxpay-plugin</module>
|
||
<!-- 功能演示模块(可独立装配;需隔离时移除 daxpay-start 中对应依赖即可) -->
|
||
<module>daxpay-demo</module>
|
||
</modules>
|
||
<properties>
|
||
<java.version>25</java.version>
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||
|
||
<!-- 三方库版本集中管理(子模块通过继承获取) -->
|
||
<lombok.version>1.18.46</lombok.version>
|
||
<mapstruct.version>1.6.3</mapstruct.version>
|
||
<springdoc.version>3.0.3</springdoc.version>
|
||
<hutool.version>5.8.46</hutool.version>
|
||
<bouncycastle.version>1.84</bouncycastle.version>
|
||
<guava.version>33.6.0-jre</guava.version>
|
||
<mybatis-plus.version>3.5.16</mybatis-plus.version>
|
||
<mybatis-plus-join.version>1.5.7</mybatis-plus-join.version>
|
||
<lock4j.version>2.2.7</lock4j.version>
|
||
<shedlock.version>6.3.1</shedlock.version>
|
||
<aws-sdk.version>2.46.15</aws-sdk.version>
|
||
<sa-token.version>1.45.0</sa-token.version>
|
||
<caffeine.version>3.2.4</caffeine.version>
|
||
<ip2region.version>3.3.7</ip2region.version>
|
||
<wxjava.version>4.8.4.B</wxjava.version>
|
||
<commonmark.version>0.24.0</commonmark.version>
|
||
<!-- Netty:用 Boot 4.1 BOM 默认(4.2.x),不覆盖。
|
||
曾为 embedded Artemis 降到 4.1.135(netty 4.2 的 CleanerJava25 在 JDK25 上对 NIO journal
|
||
direct ByteBuffer 抛 UnsupportedOperationException → AMQ224000),但 4.1 缺少
|
||
io.netty.channel.MultiThreadIoEventLoopGroup(netty 4.2 重构后的新基类),导致 Lettuce 7.x
|
||
(Boot 4.1 自带 Redis 客户端)运行时 NoClassDefFoundError —— 走 Redis 的路径(如 shedlock
|
||
定时任务抢锁)全炸。embedded 模式与 Lettuce 在 JDK25 不可共存,已弃用回 native 独立容器。
|
||
若未来重启 embedded,须先确认 Artemis 兼容 netty 4.2。 -->
|
||
</properties>
|
||
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-compiler-plugin</artifactId>
|
||
<configuration>
|
||
<source>${java.version}</source>
|
||
<target>${java.version}</target>
|
||
<annotationProcessorPaths>
|
||
<path>
|
||
<groupId>org.projectlombok</groupId>
|
||
<artifactId>lombok</artifactId>
|
||
<version>${lombok.version}</version>
|
||
</path>
|
||
<path>
|
||
<groupId>org.mapstruct</groupId>
|
||
<artifactId>mapstruct-processor</artifactId>
|
||
<version>${mapstruct.version}</version>
|
||
</path>
|
||
</annotationProcessorPaths>
|
||
</configuration>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
|
||
|
||
</project>
|