Files
dax-pay/pom.xml
daxpay 677a9541e9 fix(artemis): Netty 覆盖 4.1.135 修复 JDK 25 下内嵌 broker 启动崩溃
JDK 25 + Netty 4.2.15(Boot BOM 默认)hasUnsafe=false,freeDirectBuffer
对任意 direct ByteBuffer 直接抛 UnsupportedOperationException,Artemis
embedded 模式加载 NIO journal 时未捕获该异常导致 AMQ224000 启动失败。
4.1.135 与 Artemis 2.53 官方声明版本同系,JDK 25 下可正常清理。
2026-08-11 18:32:37 +08:00

98 lines
4.3 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?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 版本覆盖JDK 25 兼容修复):
Boot 4.1 BOM 默认 netty 4.2.15,其 CleanerJava25 对"任意 direct ByteBuffer"无法手动清理,
直接抛 UnsupportedOperationException: Cannot clean arbitrary ByteBuffer instances
Artemis 内嵌 brokerembedded 模式)加载 NIO journal 时调用
NIOSequentialFileFactory.releaseDirectBuffer 未捕获该异常 → 启动失败AMQ224000
4.1.135 与 Artemis 2.53 官方声明的 4.1.x 同系CleanerJava9 在 JDK 25 上可正常清理
invokeCleaner 仍存在,仅 deprecated且降级链优雅不支持时 NOOP不会抛异常
注意JDK 26 移除 invokeCleaner 后需再随 Artemis 官方升级同步处理。 -->
<netty.version>4.1.135.Final</netty.version>
</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>