技术栈
本页是范围内框架的依赖清单:11 个框架核心模块(xlyEntry、xlyApi、xlyManage、xlyBusinessService、xlyPersist、xlyEntity、xlyFlow、xlyInterface、xlyMsg、xlyErpJmsProductor、xlyErpJmsConsumer)、一个插件(xlyPlc),以及一个共享工具模块(xlyPlatConstant;尽管名字带 Plat*,但 xlyPersist 依赖其中的 MultiThreadServer 和 TimeContant)。
其他 plat 层模块(除 xlyPlatConstant 外的 xlyPlat*)、xlyFace(仍参与构建但不在文档范围内)和 AI 库均为范围外,本页不列。
如何读本页
两个列提供证据:
-
位置:声明该库为
api(...) 或 implementation(...) 的 build.gradle 文件。多数库声明在 xlyPersist/build.gradle,并传递到依赖 xlyPersist 的模块。
-
范围内源码引用:在上述范围内模块中对
xly-src/<module>/src/ 执行 grep -rln <package> 的文件计数,并给出代表路径。“未发现源码引用”表示该库已声明,但范围内模块的 Java、HTML 或 yaml 源码没有直接引用。它仍可能作为传递依赖进入 classpath,或由 Spring Boot autoconfig 消费。
本页不解释“为什么选择某个库”。如果 gradle 或 yaml 中有明确注释(例如 Netty 版本 pin),会引用该注释;否则只记录事实。
1. 应用平台
| Library |
Version |
位置 |
范围内源码引用 |
| Spring Boot |
2.2.5 |
xlyPersist/build.gradle(web、starter、aop、data-redis、data-mongodb、websocket、activemq、freemarker)、xlyApi/build.gradle、xlyFlow/build.gradle
|
所有 *ApplicationBoot.java 类(xlyEntry、xlyApi、xlyInterface、xlyPlc、构建时的 xlyFace)都继承 SpringBootServletInitializer。 |
| Embedded Tomcat |
Spring Boot 2.2.5 BOM |
spring-boot-starter-web 传递依赖 |
xlyEntry/src/main/resources/application-local.yml 10-29 行配置 server.port: 8080、server.servlet.context-path: /xlyEntry、server.tomcat.*。 |
| Netty |
4.1.65.Final |
xlyPersist/build.gradle |
无直接 Java import。gradle 注释说明:“引入mq后netty-common-4.1.45.Final.jar、与netty-all-4.0.42.Final.jar冲突,所以引入”;该版本用于覆盖 MQ 库引入的冲突传递版本。 |
| AspectJ Weaver |
1.9.6 |
xlyApi/build.gradle(声明两次) |
1 个文件在 xlyFlow/src/main/java/... import。主要消费者是 Spring Boot AOP starter;xlyApi 中的显式 pin 与 import 无关。 |
| Lombok |
1.18.8(xlyPersist、xlyFlow)/ 1.18.20(xlyApi) |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
19 个文件 import lombok.*。xlyApi 同时声明为 implementation 和 annotationProcessor。 |
2. 持久化 {#persistence}
| Library |
Version |
位置 |
范围内源码引用 |
| MyBatis |
2.1.2 (mybatis-spring-boot-starter) |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
102 个 Java 文件 import org.apache.ibatis.* 或 org.mybatis.*;76 个在 xlyPersist。Mapper XML 位于 xlyPersist/src/main/resources/mapper/{erptable,business,test}/。 |
| MyBatis-Plus |
3.3.0 |
xlyApi/build.gradle |
2 个文件:xlyApi/.../SqlUtil.java、xlyApi/.../BaseController.java。不在 xlyApi 之外使用。 |
| MySQL Connector/J |
8.0.13 |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
yaml 中 spring.datasource.driverClassName: com.mysql.cj.jdbc.Driver。 |
| MSSQL JDBC |
sqljdbc4 3.0 + 本地 mssql-jdbc-6.2.2.jre8.jar
|
xlyApi/build.gradle、xlyInterface/build.gradle、xlyFlow/build.gradle
|
5 个文件:xlyFlow 3 个,xlyInterface 2 个。 |
| Oracle JDBC |
本地 ojdbc6-11.2.0.4.jar
|
xlyFlow/build.gradle |
xlyFlow 中 2 个文件。 |
| Druid |
1.2.16 |
xlyPersist/build.gradle、xlyApi/build.gradle
|
6 个 Java 文件 import com.alibaba.druid.*;16 个 application-*.yml 引用 Druid 配置。 |
| HikariCP |
4.0.3 |
xlyApi/build.gradle |
8 个文件引用 com.zaxxer.hikari。Java 配置包括 MasterDataSourceConfig.java、SlaveDataSourceConfig.java。 |
| Flyway |
5.2.1 |
xlyPersist/build.gradle |
无 Java import。通过 yaml spring.flyway.* 配置,enabled: false。脚本在 xlyEntry/src/main/resources/flyway/V*__*.sql。 |
| PageHelper |
4.1.1 |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
19 个文件 import com.github.pagehelper.*。 |
| jsqlparser |
3.2 |
xlyPersist/build.gradle |
1 个 xlyPersist/src/... 文件 import net.sf.jsqlparser。 |
3. 缓存与内存
| Library |
Version |
位置 |
范围内源码引用 |
| Spring Data Redis |
2.2.5 |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
3 个 Java 文件 import org.springframework.data.redis.*;所有模块 yaml 都有 spring.redis.* 配置块。 |
| Lettuce |
Spring Data Redis 2.2.5 默认 driver |
传递依赖 |
无直接 Java import;yaml 中有 spring.redis.lettuce.pool.*。 |
| Jedis |
2.9.0 |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
5 个文件 import redis.clients.jedis,包括 xlyMsg/.../wechat/util/JedisMsgUtil.java。 |
| Guava |
18.0(xlyPersist、xlyApi);20.0(xlyFlow) |
xlyPersist/build.gradle、xlyApi/build.gradle、xlyFlow/build.gradle
|
8 个文件 import com.google.common.*。 |
4. 工作流与调度
| Library |
Version |
位置 |
范围内源码引用 |
| Activiti Engine |
5.17.0 |
xlyPersist/build.gradle、xlyApi/build.gradle;由 xlyFlow 消费 |
35 个文件 import org.activiti.*。与 6.0 modeler 库的版本偏差见 Activiti 集成。 |
| Activiti Spring Boot REST API |
6.0.0 |
xlyFlow/build.gradle |
由 Spring Boot autoconfig 和 xlyFlow 下 REST 端点消费。 |
| Activiti JSON Converter |
6.0.0 |
xlyFlow/build.gradle |
用于 xlyFlow modeler 保存路径。 |
| Quartz |
2.3.0 |
xlyFlow/build.gradle |
16 个文件 import org.quartz.*;xlyEntry yaml 通过 JDBC JobStore(qrtz_* 表)配置 spring.quartz.*。 |
5. 消息
| Library |
Version |
位置 |
范围内源码引用 |
| Spring JMS + ActiveMQ starter |
2.2.5 |
xlyPersist/build.gradle (spring-boot-starter-activemq) |
3 个文件 import org.springframework.jms.*;2 个文件 import org.apache.activemq.*。见消息。 |
| RocketMQ Spring Boot Starter |
2.0.2 |
xlyPersist/build.gradle |
xlyBusinessService/src/ 中 4 个文件 import org.apache.rocketmq.*。 |
6. 视图 / 模板
| Library |
Version |
位置 |
范围内源码引用 |
| Thymeleaf |
3.0.15 |
xlyApi.build.gradle、xlyFlow.build.gradle;也由 starter 传递 |
2 个 xlyFlow Java 文件 import;modeler 模板在 xlyFlow/src/main/resources/templates/。 |
| Freemarker |
Spring starter 2.2.5 |
xlyPersist.build.gradle、xlyApi.build.gradle、xlyFlow.build.gradle
|
1 个 xlyFlow Java 文件 import。 |
| Apache Batik |
1.8 / 1.7 |
xlyPersist.build.gradle、xlyFlow.build.gradle
|
1 个 xlyFlow 文件 import;modeler 静态资源也携带 Batik 资产。 |
7. 认证
| Library |
Version |
位置 |
范围内源码引用 |
Apache Shiro (shiro-spring) |
1.3.2(xlyPersist)/ 1.4.2(xlyApi、xlyFlow) |
xlyPersist.build.gradle、xlyApi.build.gradle、xlyFlow.build.gradle
|
6 个 Java 文件 import。未发现 @ConfigurationProperties("shiro") 或 shiro.* 属性绑定,尽管 xlyEntry local yaml 有 shiro: 块。框架 HTTP auth 模式见 API 参考。 |
shiro-ehcache / shiro-core / thymeleaf-extras-shiro
|
1.4.2 / 2.0.0 |
xlyFlow.build.gradle |
xlyFlow 模板中大量 Shiro tag;Java import 已计入上行。 |
| Bouncy Castle |
bcprov-jdk14:138 |
xlyApi.build.gradle |
2 个 RSA 工具文件。 |
| commons-codec |
1.16.0 |
xlyPersist.build.gradle、xlyApi.build.gradle
|
18 个文件 import。 |
8. 报表与导出
打印 / 导出是框架第三方代码最大的消费面。
| Library |
Version / 形态 |
位置 / 引用 |
| iText 5.x 与 lowagie iText 2.x |
itextpdf 5.5.0 + com.lowagie:itext 2.1.7 |
都在 xlyPersist.build.gradle;两条分支同时存在于 classpath。 |
| Aspose Cells / Words |
本地 jar |
xlyPersist.build.gradle;多个 xlyPersist/src/ 文件 import com.aspose.*。 |
| Apache POI |
4.1.2(xlyPersist / xlyFlow)/ 3.15(xlyApi) |
36 个文件 import。 |
| jxls + jxls-poi / jxls-jexcel |
2.8.1 / 1.0.9 |
22 个文件 import org.jxls.*。 |
| EasyExcel |
本地 4.0.3 jars |
xlyBusinessService 中 10 个文件 import。 |
| JasperReports / OLAP4J |
本地 jar |
报表相关路径 import。 |
| ZXing / Barcode4J / Pinyin4j / PDFBox / Thumbnailator / jacob |
多版本 |
条码、拼音、PDF、缩略图、COM 自动化等报表辅助功能。 |
9. 文件存储与 HTTP 客户端
| Library |
Version |
位置 / 引用 |
| Aliyun OSS SDK |
2.2.0 |
xlyPersist/src/main/java/com/xly/utils/OssUtil.java。 |
| commons-fileupload / commons-io |
1.5 / 2.5 |
xlyFlow、xlyPersist、xlyEntry、xlyBusinessService 中有 import。 |
| OkHttp + Okio |
4.10.0 / 2.10.0 |
xlyApi 中 2 个文件 import。 |
| Apache HttpClient |
4.5.5 |
xlyBusinessService 中 1 个文件 import。 |
| javax.mail |
1.6.2 |
xlyPersist 中 1 个文件 import。 |
10. JSON 与通用工具
| Library |
Version |
范围内引用 |
| FastJson |
1.2.15(xlyPersist、xlyApi)/ 1.2.60(xlyFlow) |
83 个文件 import。 |
| Jackson |
2.9.7(xlyFlow 显式)+ Spring 传递依赖 |
22 个文件 import。 |
| Hutool |
5.6.5(xlyPersist)/ 5.8.5(xlyApi、xlyFlow) |
271 个文件 import,覆盖所有范围内模块。 |
| commons-lang3 / commons-collections4 |
3.6 / 3.8.1;4.1 |
多模块 import。 |
| Groovy |
groovy-all 3.0.2 |
5 个 Java 文件 import groovy.util.logging.Slf4j,看起来是遗留 import。 |
| Struts2 JSON plugin |
2.5.30 |
仅 xlyPersist/src/main/java/com/xly/utils/FeedPage.java;框架其他部分运行在 Spring MVC 上。 |
| SnakeYAML / JDOM / validation-api |
多版本 |
xlyFlow、xlyApi、xlyInterface、xlyMsg 等少量引用。 |
11. 硬件集成
| Library |
Version |
范围内源码引用 |
| HslCommunication |
本地 HslCommunication.jar
|
9 个文件引用,分布在 xlyPersist、xlyBusinessService、xlyPlc。xlyPlc 是 PLC 桥;见切片 6。 |
12. 通知
| Library |
Version |
范围内源码引用 |
| Aliyun DingTalk SDK |
com.aliyun:dingtalk 2.1.14 |
xlyMsg/src/main/java/com/xly/dingtalk/ 中 1 个文件;见通知。 |
alibaba-dingtalk-service-sdk |
2.0.0 |
xlyMsg 中 1 个文件 import com.dingtalk.api.*。 |
| Jeewx-API(微信) |
本地 jeewx-api-1.3.2.jar
|
xlyInterface 中 5 个文件引用。 |
13. 授权许可
| Library |
Version |
范围内源码引用 |
| TrueLicense |
本地 trueswing.jar + truexml.jar + turelicense.jar
|
xlyBusinessService/src/main/java/com/xly/license/ 下 5 个文件;xlyEntry local yaml 中 License: 块默认 checkLic: false。 |
14. 日志
| Library |
Version |
范围内源码引用 |
| Logback |
logback-classic 1.2.3 |
5 个文件 import;配置在 xlyEntry/src/main/resources/logback-spring.xml。 |
| log4j 1.x |
1.2.17 |
xlyFlow 中 1 个文件 import;Druid stat filter yaml 中也出现 filters: stat,log4j2。 |
15. 构建与开发
| Library |
Version |
用途 |
| Gradle wrapper |
已提交 |
构建工具;见本地运行。 |
| Spring Boot Gradle plugin |
2.2.5.RELEASE |
repo 根 build.gradle,构建可运行 WAR。 |
| Spring Boot configuration processor |
2.2.5.RELEASE |
xlyApi annotationProcessor,用于 @ConfigurationProperties IDE 元数据。 |
已声明但未发现范围内源码引用
以下库出现在 build.gradle 中,但在 xly-src/<in-scope module>/src/ 下未发现 Java import、HTML 模板引用或 yaml 属性绑定。它们可能是传递依赖、Spring Boot autoconfig 消费的库、已删除代码遗留,或只是冗余声明。
| Library |
声明位置 |
备注 |
| Kaptcha、JNA、oshi-core、UserAgentUtils |
xlyFlow.build.gradle |
未发现 import;分别用于验证码、原生访问、系统信息、UA 解析。 |
| Barbecue、Gson、commons-pool2 |
xlyPersist.build.gradle |
未发现 import;当前活跃条码路径是 Barcode4J + ZXing,JSON 路径是 FastJson + Jackson。 |
| Baidu SDK |
xlyInterface.build.gradle 本地 jar |
未发现 com.baidu import。 |
mchange-commons-java |
xlyFlow.build.gradle |
未发现直接 import。 |
| Springfox |
xlyInterface.build.gradle |
未发现直接 Java import;通过 jar 静态资源提供 /swagger-ui.html,但没有 Docket bean。见 Webhook API。 |
值得注意的版本偏差与本地 jar
| 项 |
细节 |
| Shiro |
xlyPersist 为 1.3.2;xlyApi 和 xlyFlow 为 1.4.2。 |
| FastJson |
xlyPersist / xlyApi 为 1.2.15;xlyFlow 为 1.2.60。 |
| Hutool |
xlyPersist 为 5.6.5;xlyApi / xlyFlow 为 5.8.5。 |
| Apache POI |
xlyPersist / xlyFlow 为 4.1.2;xlyApi 为 3.15。 |
| Guava |
xlyPersist / xlyApi 为 18.0;xlyFlow 为 20.0。 |
| commons-lang3 |
xlyPersist 为 3.6;xlyFlow 为 3.8.1。 |
| Lombok |
xlyPersist / xlyFlow 为 1.18.8;xlyApi 为 1.18.20。 |
| iText |
xlyPersist 同时声明 itextpdf 5.5.0 和 com.lowagie:itext 2.1.7。 |
| Activiti |
流程引擎 5.17.0(xlyPersist / xlyApi);rest-api 与 json-converter 6.0.0(xlyFlow)。见 Activiti 集成。 |
| 本地 jar |
xlyPersist/src/main/java/lib/ 下有 Aspose、jacob、HslCommunication、QRCode、OLAP4J、JasperReports、EasyExcel 等;xlyFlow 和 xlyInterface 下有 MSSQL / Oracle / Baidu / Jeewx jar;xlyBusinessService 下有 TrueLicense jar。 |
| Spring Boot |
2.2.5.RELEASE,固定在根 build.gradle plugin block,并由使用 starter 的各模块声明。 |
本清单有意不包含
- plat 层(
xlyPlat* 模块)及仅在其中声明的依赖;按首页说明属于范围外。
- AI / LLM 库(
xlyApi/build.gradle 中的 com.theokanning.openai-gpt3-java:service 0.11.1 和 com.unfbx:chatgpt-java 1.0.8),范围外。
-
xlyEntity/build.gradle 中声明的 MongoDB starter(spring-boot-starter-data-mongodb 2.2.5)。xlyEntity 中有 22 个 @Document 类,20 个名为 PLAT_*,另 2 个是 DIKE_TEST* 测试夹具。对范围内模块 grep MongoTemplate / MongoRepository 只发现 xlyPersist/.../dao/platmongo/BaseMongoDao.java(服务 plat 层);没有范围内模块调用 Mongo API。见首页范围说明。
-
xlyFace,范围外。