Skip to content

Commit 61344fa

Browse files
xlorneclaude
andcommitted
refactor: 移除流程引擎模块、版本机制改为 CI-Friendly、CI 迁移至 GitHub Actions
1. 移除流程引擎:删除 springboot-starter-flow 模块及全部关联内容 (根 pom 各 profile 条目、kryo 依赖、event.md、PKR 能力文档), 流程引擎已重构为独立仓库:https://github.com/codingapi/flow-engine, README 增加迁移说明 2. 版本管理:采用 ${revision} + flatten-maven-plugin(resolveCiFriendliesOnly), 开发版本锁定 8.2.0-SNAPSHOT(8=JDK 版本,2=Spring Boot 大版本), 发版通过 -Drevision=x.y.z 指定正式版本 3. CI 迁移:新增 GitHub Actions(.github/workflows/ci.yml,JDK 11 编译测试 + Codecov 覆盖率上传),移除 .travis.yml(含明文 CODECOV_TOKEN), README 徽章替换为 Actions/Codecov Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 56d4857 commit 61344fa

123 files changed

Lines changed: 125 additions & 13780 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ main, dev, 2.x, 8.2.x ]
6+
pull_request:
7+
branches: [ main, dev, 2.x, 8.2.x ]
8+
9+
concurrency: ${{ github.workflow }}-${{ github.ref }}
10+
11+
jobs:
12+
build:
13+
name: Build & Test
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout Repo
17+
uses: actions/checkout@v4
18+
19+
- name: Set up JDK 11
20+
uses: actions/setup-java@v4
21+
with:
22+
distribution: temurin
23+
java-version: 11
24+
cache: maven
25+
26+
- name: Compile
27+
run: ./mvnw clean compile -P travis
28+
29+
- name: Test
30+
run: ./mvnw test -P travis
31+
32+
- name: Upload coverage to Codecov
33+
uses: codecov/codecov-action@v5
34+
with:
35+
token: ${{ secrets.CODECOV_TOKEN }}
36+
files: springboot-starter/target/site/jacoco/jacoco.xml,springboot-starter-script/target/site/jacoco/jacoco.xml,springboot-starter-security/target/site/jacoco/jacoco.xml,springboot-starter-data-fast/target/site/jacoco/jacoco.xml,springboot-starter-data-authorization/target/site/jacoco/jacoco.xml
37+
fail_ci_if_error: true
38+
verbose: true
39+
40+
- name: Install
41+
run: ./mvnw install -P travis -DskipTests

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,5 @@ build/
3737
### Claude Code & CodeGraph ###
3838
.claude/
3939
.codegraph/
40+
41+
.flattened-pom.xml

.travis.yml

Lines changed: 0 additions & 21 deletions
This file was deleted.

CLAUDE.md

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,22 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
44

55
## 项目概览
66

7-
`com.codingapi.springboot:springboot-parent`v2.10.55)是一套基于 Spring Boot 2.7.18 + JDK 8 的**领域驱动设计(DDD)落地框架**,围绕"事件风暴 + 流程编排 + 数据权限 + 动态脚本"四大支柱提供可插拔的 starter 模块。框架代码本身即是规范,业务方按需引入 starter 即可获得对应能力,无需重复造轮子。
7+
`com.codingapi.springboot:springboot-parent`当前开发版本 `8.2.0-SNAPSHOT`)是一套基于 Spring Boot 2.7.18 + JDK 8 的**领域驱动设计(DDD)落地框架**,围绕"事件风暴 + 数据权限 + 动态脚本"三大支柱提供可插拔的 starter 模块。框架代码本身即是规范,业务方按需引入 starter 即可获得对应能力,无需重复造轮子。
88

9-
详细能力文档见 `docs/capabilities/index.md`(共 9 篇),开发规范见 `docs/conventions/index.md`
9+
版本采用 CI-Friendly 机制:pom 版本声明为 `${revision}`,开发期锁定 `8.2.0-SNAPSHOT`(版本号含义:8 = JDK 8,2 = Spring Boot 2.x 大版本,第三位为补丁版本),正式发布时通过 `-Drevision=x.y.z` 指定正式版本号,无需修改 pom。
10+
11+
详细能力文档见 `docs/capabilities/index.md`(共 8 篇),开发规范见 `docs/conventions/index.md`
1012

1113
## 模块拓扑与依赖
1214

13-
多模块项目,根 `pom.xml` 中只激活 `springboot-starter-data-authorization`;完整 6 模块通过 `dev` / `travis` / `ossrh` profile 激活。模块依赖**严格单向**,不得反向依赖:
15+
多模块项目,根 `pom.xml` 中只激活 `springboot-starter-data-authorization`;完整 5 模块通过 `dev` / `travis` / `ossrh` profile 激活。模块依赖**严格单向**,不得反向依赖:
1416

1517
```
1618
springboot-starter (基础 DDD 框架:领域事件、代理、异常、加密、HTTP 代理)
1719
1820
├─→ springboot-starter-script (Groovy 脚本引擎,依赖 starter)
1921
│ │
20-
│ ├─→ springboot-starter-data-fast (JPA 增强 + 脚本映射,依赖 starter+script)
21-
│ │ │
22-
│ │ └─→ springboot-starter-flow (流程引擎,依赖 starter+script)
23-
│ │
24-
│ └─→ springboot-starter-flow (同上路径)
22+
│ └─→ springboot-starter-data-fast (JPA 增强 + 脚本映射,依赖 starter+script)
2523
2624
└─→ springboot-starter-security (JWT/Redis 双模 Token 网关,依赖 starter)
2725
@@ -51,21 +49,21 @@ springboot-starter (基础 DDD 框架:领域事件、代理、异常
5149

5250
# 单模块测试
5351
./mvnw -pl springboot-starter -am test
54-
./mvnw -pl springboot-starter-flow -Dtest=FlowServiceTest test
52+
./mvnw -pl springboot-starter-script -Dtest=GroovyScriptRuntimeContextTest test
5553

5654
# 部署 profile
5755
./mvnw clean test -P travis # 启用 jacoco + clover
58-
./mvnw clean deploy -P ossrh # 推送到 Sonatype(需 GPG)
56+
57+
# 正式发布(通过 -Drevision 指定正式版本号,无需修改 pom)
58+
./mvnw clean deploy -P ossrh -Drevision=8.2.0 # 推送到 Sonatype(需 GPG)
5959
```
6060

61-
测试基于 H2 内存库(`com.h2database:h2` scope=test),无需外部 DB;流程引擎测试会触发 `DemoChangeLogHandler` 的大量并发日志输出(H2 关闭时的告警是正常的)。
61+
测试基于 H2 内存库(`com.h2database:h2` scope=test),无需外部 DB(H2 关闭时的告警是正常的)。
6262

6363
## 文档与知识库
6464

6565
- `README.md` — 模块列表、maven 依赖、版本说明
66-
- `event.md` — 流程引擎事件触发机制(CREATE/SAVE/PASS/REJECT/RECALL/DELETE/VOIDED/BACK/FINISH/TRANSFER/URGE/STOP)
67-
- `springboot-starter-flow/README.md` — 流程引擎功能矩阵(流程管理/设计/能力 9 大类)
68-
- `docs/capabilities/` — 9 篇核心能力文档(DDD 事件、领域代理、Groovy 脚本、JDBC 代理、SQL 拦截器、JPA 仓储、流程 Schema、Token 网关、Spring Boot 基础)
66+
- `docs/capabilities/` — 8 篇核心能力文档(DDD 事件、领域代理、Groovy 脚本、JDBC 代理、SQL 拦截器、JPA 仓储、Token 网关、Spring Boot 基础)
6967
- `docs/conventions/` — 项目开发规范(待补全)
7068
- Wiki:https://github.com/codingapi/springboot-framework/wiki
7169

README.md

Lines changed: 28 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/codingapi/springboot-framework/blob/main/LICENSE)
22
[![Maven Central](https://img.shields.io/maven-central/v/com.codingapi.springboot/springboot-starter.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:%22com.codingapi.springboot%22%20AND%20a:%22springboot-starter%22)
3-
[![Build Status](https://app.travis-ci.com/codingapi/springboot-framework.svg?branch=main)](https://app.travis-ci.com/codingapi/springboot-framework)
4-
[![codecov](https://codecov.io/gh/codingapi/springboot-framework/branch/main/graph/badge.svg?token=Gl9LjJV6y4)](https://codecov.io/gh/codingapi/springboot-framework)
3+
[![Build](https://img.shields.io/github/actions/workflow/status/codingapi/springboot-framework/ci.yml?label=Build&logo=github)](https://github.com/codingapi/springboot-framework/actions)
4+
[![Codecov](https://codecov.io/gh/codingapi/springboot-framework/branch/8.2.x/graph/badge.svg)](https://codecov.io/gh/codingapi/springboot-framework)
55

66
# springboot-framework | Springboot领域驱动开发
77

@@ -11,8 +11,17 @@
1111

1212
## Project Version | 项目版本说明
1313

14-
v.2.x 为springboot 2.x版本,使用jdk8版本
15-
v.3.x 为springboot 3.x版本,使用jdk17版本
14+
`8.2.0` 起,项目采用 CI-Friendly 版本管理方式(与 [flow-engine](https://github.com/codingapi/flow-engine) 相同):pom 中的版本声明为 `${revision}`,开发期锁定为 SNAPSHOT 版本(当前为 `8.2.0-SNAPSHOT`),正式发布时通过 `-Drevision=x.y.z` 指定正式版本号,无需修改 pom。
15+
16+
版本号含义:第一位为 JDK 版本,第二位为 Spring Boot 大版本,第三位为补丁版本。例如 `8.2.0` 表示基于 JDK 8、Spring Boot 2.x 的第 0 个补丁版本。
17+
18+
(历史版本线:v.2.x 对应 Spring Boot 2.x / JDK 8,旧版本号为 2.x.y;v.3.x 对应 Spring Boot 3.x / JDK 17。)
19+
20+
Since `8.2.0`, the project uses a CI-Friendly versioning scheme (same approach as [flow-engine](https://github.com/codingapi/flow-engine)): the pom declares its version as `${revision}`, which is pinned to a SNAPSHOT during development (currently `8.2.0-SNAPSHOT`); the release version is supplied via `-Drevision=x.y.z` at release time, with no pom changes needed.
21+
22+
Version number convention: first segment = JDK version, second segment = Spring Boot major version, third segment = patch version. For example, `8.2.0` targets JDK 8 and Spring Boot 2.x, patch 0.
23+
24+
(Legacy lines: v.2.x for Spring Boot 2.x on JDK 8, previously versioned as 2.x.y; v.3.x for Spring Boot 3.x on JDK 17.)
1625

1726
## Frontend Framework Version | 前端框架版本说明
1827

@@ -21,8 +30,6 @@ v.3.x 为springboot 3.x版本,使用jdk17版本
2130
| [@codingapi/ui-framework](https://github.com/codingapi/ui-compoments) | UI-Framework | [![npm](https://img.shields.io/npm/v/@codingapi/ui-framework.svg)](https://www.npmjs.com/package/@codingapi/ui-framework) |
2231
| [@codingapi/form-pc](https://github.com/codingapi/ui-compoments) | Form-PC | [![npm](https://img.shields.io/npm/v/@codingapi/form-pc.svg)](https://www.npmjs.com/package/@codingapi/form-pc) |
2332
| [@codingapi/form-mobile](https://github.com/codingapi/ui-compoments) | Form-Mobile | [![npm](https://img.shields.io/npm/v/@codingapi/form-mobile.svg)](https://www.npmjs.com/package/@codingapi/form-mobile) |
24-
| [@codingapi/flow-pc](https://github.com/codingapi/ui-compoments) | Flow-PC | [![npm](https://img.shields.io/npm/v/@codingapi/flow-pc.svg)](https://www.npmjs.com/package/@codingapi/flow-pc) |
25-
| [@codingapi/flow-mobile](https://github.com/codingapi/ui-compoments) | Flow-Mobile | [![npm](https://img.shields.io/npm/v/@codingapi/flow-mobile.svg)](https://www.npmjs.com/package/@codingapi/flow-mobile) |
2633

2734

2835
## Project Modules Description | 项目模块介绍
@@ -31,56 +38,58 @@ v.3.x 为springboot 3.x版本,使用jdk17版本
3138
* springboot-starter-script | 脚本引擎框架
3239
* springboot-starter-data-fast | 快速数据呈现框架
3340
* springboot-starter-data-authorization | 数据权限框架
34-
* springboot-starter-flow | 流程引擎框架
3541
* springboot-starter-security | security权限框架支持基于JWT的无状态权限认证与Redis的有状态权限认证
3642

43+
## Flow Engine Migration | 流程引擎迁移说明
44+
45+
工作流引擎(springboot-starter-flow)已从本框架移除,重构为独立仓库维护,新地址:[https://github.com/codingapi/flow-engine](https://github.com/codingapi/flow-engine)。需要使用流程引擎的项目请改用独立仓库。
46+
47+
The workflow engine (springboot-starter-flow) has been removed from this framework and refactored into an independently maintained repository: [https://github.com/codingapi/flow-engine](https://github.com/codingapi/flow-engine). Projects that need the workflow engine should migrate to the standalone repository.
48+
3749
## SpringBoot DDD Architecture | SpringBoot DDD 框架图
3850

3951
![](./docs/img/ddd_architecture.png)
4052

4153
## maven install
4254

55+
以下示例使用正式发布版本(如 `8.2.0`,最新发布版见上方 Maven Central 徽章);如需体验开发快照版本,请使用 `8.2.0-SNAPSHOT`
56+
57+
The examples below use an official release version (e.g. `8.2.0`; see the Maven Central badge above for the latest release). Use `8.2.0-SNAPSHOT` for the development snapshot.
58+
4359
```
4460
<!-- Springboot领域驱动框架 -->
4561
<dependency>
4662
<groupId>com.codingapi.springboot</groupId>
4763
<artifactId>springboot-starter</artifactId>
48-
<version>${last.version}</version>
64+
<version>8.2.0</version>
4965
</dependency>
5066
5167
<!-- 脚本引擎框架 -->
5268
<dependency>
5369
<groupId>com.codingapi.springboot</groupId>
5470
<artifactId>springboot-starter-script</artifactId>
55-
<version>${last.version}</version>
71+
<version>8.2.0</version>
5672
</dependency>
5773
5874
<!-- 快速数据呈现框架 -->
5975
<dependency>
6076
<groupId>com.codingapi.springboot</groupId>
6177
<artifactId>springboot-starter-data-fast</artifactId>
62-
<version>${last.version}</version>
78+
<version>8.2.0</version>
6379
</dependency>
6480
6581
<!-- 数据权限框架 -->
6682
<dependency>
6783
<groupId>com.codingapi.springboot</groupId>
6884
<artifactId>springboot-starter-data-authorization</artifactId>
69-
<version>${last.version}</version>
70-
</dependency>
71-
72-
<!-- 流程引擎框架 -->
73-
<dependency>
74-
<groupId>com.codingapi.springboot</groupId>
75-
<artifactId>springboot-starter-flow</artifactId>
76-
<version>${last.version}</version>
85+
<version>8.2.0</version>
7786
</dependency>
7887
7988
<!-- security&jwt权限框架 -->
8089
<dependency>
8190
<groupId>com.codingapi.springboot</groupId>
8291
<artifactId>springboot-starter-security</artifactId>
83-
<version>${last.version}</version>
92+
<version>8.2.0</version>
8493
</dependency>
8594
8695
```
@@ -96,10 +105,6 @@ If you find something incorrect or missing, please leave comments / suggestions.
96105

97106
https://github.com/codingapi/springboot-framework/wiki
98107

99-
## Example
100-
101-
[example](./example)
102-
103108
## Reference Documentation
104109

105110
For further reference, please consider the following sections:

docs/capabilities/index.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,9 @@
1212
| [springboot-starter-data-authorization/jdbc-proxy](./springboot-starter-data-authorization/jdbc-proxy.md) | springboot-starter-data-authorization | 自定义 JDBC 驱动代理(Connection/Statement/PreparedStatement/CallableStatement/Result... | 后端 | 项目自有 |
1313
| [springboot-starter-data-authorization/sql-interceptor](./springboot-starter-data-authorization/sql-interceptor.md) | springboot-starter-data-authorization | 基于 JSqlParser 的 SQL 拦截器,对 SELECT 语句递归改写以注入行级数据权限条件 | 后端 | 项目自有 |
1414
| [springboot-starter-data-fast/jpa-repository](./springboot-starter-data-fast/jpa-repository.md) | springboot-starter-data-fast | 增强版 JPA Repository 接口体系,支持动态 SQL、原生查询、Map 返回、分页、排序与高级搜索 | 后端 | 项目自有 |
15-
| [springboot-starter-flow/schema-reader](./springboot-starter-flow/schema-reader.md) | springboot-starter-flow | 流程设计图(Schema)解析器,将 JSON 描述的节点/边转换为 FlowNode/FlowRelation 内存模型 | 后端 | 项目自有 |
1615
| [springboot-starter-script/groovy-script-runtime](./springboot-starter-script/groovy-script-runtime.md) | springboot-starter-script | 基于 Groovy 的动态脚本运行时,支持函数调用与脚本执行两类入口、LRU 缓存、临时脚本落盘与启动恢复 | 后端 | 项目自有 |
1716
| [springboot-starter-security/token-gateway](./springboot-starter-security/token-gateway.md) | springboot-starter-security | 无状态 JWT 与有状态 Redis 双模 Token 网关,统一 Token 生命周期、过期/续期与权限注入 | 后端 | 项目自有 |
1817

1918
---
2019

21-
**统计**: 共 9 篇 — 已实现 9 / 计划中 0 / 已废弃 0
20+
**统计**: 共 8 篇 — 已实现 8 / 计划中 0 / 已废弃 0

docs/capabilities/springboot-starter-flow/schema-reader.md

Lines changed: 0 additions & 114 deletions
This file was deleted.

docs/capabilities/springboot/spring-boot.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ com.codingapi.springboot.framework.AutoConfiguration
4343
com.codingapi.springboot.script.AutoConfiguration
4444
com.codingapi.springboot.security.AutoConfiguration
4545
com.codingapi.springboot.fast.DataFastConfiguration
46-
com.codingapi.springboot.flow.FlowConfiguration
4746
com.codingapi.springboot.authorization.DataAuthorizationConfiguration
4847
```
4948

@@ -72,8 +71,7 @@ com.codingapi.springboot.authorization.DataAuthorizationConfiguration
7271
spring-boot-starter (基础)
7372
├── springboot-starter (DDD 领域框架)
7473
│ ├── springboot-starter-script
75-
│ │ ├── springboot-starter-data-fast
76-
│ │ └── springboot-starter-flow
74+
│ │ └── springboot-starter-data-fast
7775
│ ├── springboot-starter-security
7876
│ └── springboot-starter-data-authorization
7977
```

0 commit comments

Comments
 (0)