3.1 KiB
3.1 KiB
2026-04-17 TongWeb 接入实施记录
1. 改动目标
- 按 TongWeb 接入指南将后端默认内嵌容器从 Tomcat 切换为 TongWeb
- 保持当前 Spring Boot 3.5.8 工程结构不变,按 Jakarta 体系接入 TongWeb 3.x Starter
- 将 TongWeb license 随
ruoyi-admin产物一起打包,并补齐可回归测试
2. 实施内容
2.1 Maven 依赖与仓库配置
涉及文件:
pom.xmlruoyi-admin/pom.xml
实施内容:
- 在根
pom.xml增加tongweb.version=7.0.E.7 - 在根
pom.xml增加 TongWeb Maven 仓库https://mvn.elitescloud.com/nexus/repository/maven-releases/ - 在根
pom.xml的dependencyManagement中声明com.tongweb.springboot:tongweb-spring-boot-starter-3.x - 在
ruoyi-admin/pom.xml中对ruoyi-framework传递进来的spring-boot-starter-tomcat做排除 - 在
ruoyi-admin/pom.xml中引入tongweb-spring-boot-starter-3.x - 在
ruoyi-admin/pom.xml中显式保留src/main/resources资源打包规则,确保.dat文件进入产物
说明:
- 指南中的
tongweb-spring-boot-starter-2.x仅适用于 Spring Boot 2.x - 当前仓库为 Spring Boot 3.5.8,因此本次按 TongWeb 3.x Starter 接入,避免 Jakarta/Servlet 版本不兼容
2.2 TongWeb 基础配置与 license 资源
涉及文件:
ruoyi-admin/src/main/resources/application.ymlruoyi-admin/src/main/resources/Tongweb_license.dat
实施内容:
- 在基础配置
application.yml中新增server.tongweb.license.path=classpath:Tongweb_license.dat - 将 TongWeb license 以
Tongweb_license.dat固定名称放入ruoyi-admin/src/main/resources/ - 保留现有环境文件中的
server.tomcat.*配置,先不做额外收缩,后续仅在 TongWeb 启动日志明确报冲突时再按最小范围调整
2.3 回归测试补齐
涉及文件:
ruoyi-admin/src/test/java/com/ruoyi/config/TongWebIntegrationConfigurationTest.java
实施内容:
- 新增 classpath 资源测试,校验
Tongweb_license.dat能从测试类路径读取 - 新增基础配置测试,校验
application.yml中存在server.tongweb.license.path - 测试目标是防止后续重构时误删 TongWeb 配置或 license 资源
3. 验证项
建议执行以下命令:
mvn -pl ruoyi-admin -am test -Dtest=TongWebIntegrationConfigurationTest,LogbackConfigurationTest
mvn -pl ruoyi-admin -am package -DskipTests
mvn -pl ruoyi-admin -am dependency:tree "-Dincludes=com.tongweb.springboot:*,com.tongweb:*,org.apache.tomcat.embed:*"
jar tf ruoyi-admin/target/ruoyi-admin.jar | rg 'Tongweb_license.dat|tongweb'
验证重点:
- TongWeb 依赖能够正常解析
spring-boot-starter-tomcat不再作为ruoyi-admin主依赖链出现Tongweb_license.dat已进入打包产物- TongWeb 相关 jar 已进入
BOOT-INF/lib/
4. 结论
- 本次接入保持现有工程结构与启动入口不变,仅替换内嵌 Servlet 容器实现
- 接入链路已经覆盖依赖、配置、资源与自动化校验四个层面
- 后续若要做运行态验证,可继续基于本次改造执行
spring-boot:run或打包后启动,并在验证完成后关闭测试进程