Files
starRiverProperty/docs/architecture/Maven聚合工程说明.md
hpd840321 7b2bd307f1 Initial commit: reorganized source tree
- backend/: 13 Maven modules (cw-elevator-application, cloudwalk-cloud, intelligent-cwoscomponent, ninca-crk, etc.)
- frontend/: 4 Vue projects (elevator-front, cwos-portal, alarm-front, front_acs) + decompiled + scripts
- scripts/: build, test-env, tools (Docker Compose, service templates, API parity)
- docs/: AGENTS.md, superpowers specs, architecture docs
- .gitignore: standard Java/Maven exclusions

Moved from legacy maven-*/ root layout to backend/ organized structure.
2026-05-09 09:56:45 +08:00

298 lines
22 KiB
Markdown
Raw Permalink 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.
# Maven 聚合工程说明(starRiverProperty
> **适用范围**:本仓库根目录下以 `maven-` 为前缀的 **Maven Reactor**:其中 **五个** 为主业务聚合工程;另有 **七个** 补充反应堆(`maven-cloudwalk-device-sdk`、`maven-cloudwalk-device-manager`、`maven-cwos-resource`、`maven-cloudwalk-intelligent-davinci-manager`、**`maven-cloudwalk-legacy-public`**、**`maven-cwos-common-aks`**、**`maven-cwos-device-authentication`**)用于在私服缺父 POM 或缺历史公共 JAR 时 **本地 `install` 闭合** `cloudwalk-device-sdk`、`cloudwalk-device-manager`、`cwos-component-resource`、`cwos-portal`、`cwos-java-sdk-resource`、**`cloudwalk-intelligent-davinci-manager` / `davinci-manager-storage`**、**`cloudwalk-common-result` / `web` / `serial`3.7.2**、**`cwos-sdk-event`**、**`cloudwalk-intelligent-component-lock`**、**`cwos-common-aks` / `cwos-device-authentication`** 等坐标(**`反1/`** 下对应 `*.jar.src.zip` 已接入各反应堆)。
> **不适用范围**:各工程依赖的 **NINCA / 云从内部** 等大量 JAR 仍多须 Nexus 解析;本文描述**本仓库内可见的模块边界与协作关系**,补充反应堆仅覆盖文档化缺口中的一段。
---
## 1. 文档目的
- 说明五个聚合工程各自的 **业务定位、子模块划分、技术栈选型原因**
- 说明工程之间的 **Maven 依赖与调用链上的协作**(与 `docs/business/` 中接口走查互补:本文偏「工程与构件」,走查文档偏「接口与数据流」)。
- 说明 **`maven-*`** 目录与 **`artifacts/decompiled/`**(源码归档,目录名 `decompiled` 为历史约定)、**运行包目录** `cw-elevator-application-V1.0.0.20211103/` 的分工,避免混淆「可改源码树」与「仅对照归档」。
---
## 2. 工程一览
### 2.1 主业务五工程
| 仓库目录 | 聚合 artifactId(父 POM | `groupId` | 版本(父 POM | 子模块(`modules` |
|----------|---------------------------|-----------|----------------|----------------------|
| `maven-cloudwalk-cloud/` | `cloudwalk-cloud-reactor` | `cn.cloudwalk.cloud` | `4.0.0-Brussels-SRX` | `cloudwalk-cloud-common``cloudwalk-common-event``cloudwalk-common-service` |
| `maven-cw-elevator-application/` | `cw-elevator-application-reactor` | `cn.cloudwalk.elevator` | `2.0-SNAPSHOT` | `cw-elevator-application-common``data``service``web` |
| `maven-intelligent-cwoscomponent/` | `intelligent-cwoscomponent-reactor` | `cn.cloudwalk.intelligent` | `3.0.0-xinghewan` | `intelligent-cwoscomponent-parent``interface``rest` |
| `maven-ninca-crk/` | `ninca-crk-reactor` | `cn.cloudwalk.ninca` | `2.0.0` | `ninca-crk-gpu-std` |
| `maven-ninca-qk-alarm/` | `ninca-qk-alarm-reactor` | `cn.cloudwalk.ninca` | `1.0.0-SNAPSHOT` | `ninca-qk-alarm-app-starter`(其下再含 web / interface 等子模块) |
### 2.2 补充反应堆(编译链)
| 仓库目录 | 说明 |
|----------|------|
| `maven-cloudwalk-device-sdk/` | 安装 **`cn.cloudwalk:cloudwalk-device-sdk:2.2.0`**`pom`)与 **`cloudwalk-device-sdk-protocol-entity`**,供 **`maven-intelligent-cwoscomponent`** 解析 `protocol-entity` 描述符。 |
| `maven-cloudwalk-device-manager/` | 安装 **`cn.cloudwalk.cloud:cloudwalk-device-manager:2.0.2`**`pom`)及 **`cloudwalk-device-manager-common`**、**`cloudwalk-device-manager-interface`**;依赖 **`cloudwalk-common-result:3.7.2-Brussels-SRX`**(须先 **`maven-cloudwalk-legacy-public`** `install`)。 |
| `maven-cwos-resource/` | 安装 **`cwos-component-resource`**、**`cwos-portal`** 父 POM 及 **`cwos-java-sdk-resource`** 等,供 **`cw-elevator-application-service`** 解析 `cwos-java-sdk-resource` 的传递父链。`cwos-portal-interface`**裁剪 + 占位** 以闭合 SDK,详见 [本地编译说明.md](../build/本地编译说明.md) §3。 |
| `maven-cloudwalk-intelligent-davinci-manager/` | 安装 **`cn.cloudwalk.intelligent:cloudwalk-intelligent-davinci-manager:1.1.7-SNAPSHOT`**(父 `pom`)及 **`davinci-manager-common`**、**`davinci-manager-storage`**,供电梯 **`cw-elevator-application-service`** 解析 **`davinci-manager-storage`**`davinci.manager.storage.version`)。源码基底来自历史 **1.1.5** 反编译 zip,与 V1 运行包 **1.1.7-SNAPSHOT** 坐标一致;**`SpringMvcContract` / `FeignClientsConfiguration`** 与 **Greenwich + OpenFeign** 对齐。 |
| `maven-cloudwalk-legacy-public/` | 安装 **`cn.cloudwalk.cloud:cloudwalk-cloud-common:3.7.2-Brussels-SRX`**(与 **`cloudwalk-common-result` / `web` / `serial`** 反编译 POM 的 parent 一致)、**`cwos-sdk-event:1.5.0-SNAPSHOT`**、**`cloudwalk-intelligent-component-lock:1.1.1-SNAPSHOT`**。源码自 **`反1/*.jar.src.zip`** 解压;**`cwos-sdk-event`** 已替换 **`reflections-maven`** 为 **`org.reflections:reflections`**,并修正 **`KafkaConsumer#setListenerClass`** / **`EventClient`** 的编译问题。 |
| `maven-cwos-common-aks/` | 安装 **`cn.cloudwalk.cloud:cwos-common-aks:1.0.0-SNAPSHOT`** 与 **`cwos-common-aks-interface`**;源码自 **`反1/cwos-common-aks-interface-1.0.0-SNAPSHOT.jar.src.zip`**;须先 **`maven-cloudwalk-legacy-public`****`cloudwalk-common-result`**)。 |
| `maven-cwos-device-authentication/` | 安装 **`cn.cloudwalk.cloud:cwos-device-authentication:1.0.0-SNAPSHOT`** 与 **`cwos-device-authentication-interface`**;源码自 **`反1/cwos-device-authentication-interface-1.0.0-SNAPSHOT.jar.src.zip`**;依赖 **device-sdk**、**device-manager**、**`maven-cloudwalk-cloud`****`cloudwalk-common-service`**)、**`cwos-common-aks-interface`**,须在上述反应堆与 **`maven-cwos-common-aks`** 之后 **`install`**。 |
> **版本说明**:上表为当前源码树反应堆版本(相对历史反编译/私服线已做**主版本号升级**,便于区分)。与 `cw-elevator-application-V1.0.0.20211103` 等**历史运行包内 JAR 文件名**不必一致,详见 `docs/build/ORIGINAL_BUILD_JDK.txt` 文首说明及 [Maven工作区子工程版本一览](Maven工作区子工程版本一览.md)。
---
## 3. 各工程详细说明
### 3.1 `maven-cloudwalk-cloud` — 云从公共云底座(事件与服务)
**定位**
聚合 **CloudWalk 内部通用能力**:消息与事件封装(`cloudwalk-common-event`)、通用服务侧抽象与实现(`cloudwalk-common-service`)。电梯应用、智能组件等上层工程普遍依赖这里的 **`CloudwalkResult`、Feign 封装、事件注解** 等构件。
**为何存在「`cloudwalk-cloud-common`」子模块**
历史子 JAR 的 `parent` 曾指向 **`cloudwalk-cloud-common`**,而原始父 POM 在仓库中缺失。本聚合工程增加 **`cloudwalk-cloud-common`** 模块,使子模块能 **先 `install` 到本地 `~/.m2`**,满足其它构件对「父 POM 坐标」的解析,同时由本 reactor **继承 Spring Boot**,统一 **Spring Cloud Greenwich** 与内部版本属性(如 `cwos-sdk-event` 与 V1 运行包 `lib` 对齐的说明见父 `pom.xml` 注释)。
**技术栈摘要**
- Spring Boot **2.1.x**(与父 POM 声明一致)
- Spring Cloud **Greenwich**`spring-cloud-dependencies` import
- Java **1.8**
**与其它工程关系**
**`maven-cw-elevator-application`**、**`maven-intelligent-cwoscomponent`**、**`maven-ninca-crk`** 等通过 `dependencyManagement` 或直连依赖引用 `cloudwalk-common-event` / `cloudwalk-common-service` 等坐标。
---
### 3.2 `maven-cw-elevator-application` — 电梯 / ACS 通行应用
**定位**
**电梯与门禁派梯相关业务应用**:人员通行规则(含访客 `add/visitor`)、设备、区域/空间 Feign、乘梯记录、MQTT 等。对应运行环境中常部署的 **`elevator-app`** 一类服务;业务走查见 `docs/business/访客注册与派梯楼层业务流程走查.md`
**子模块分层(推荐理解顺序)**
| 子模块 | 典型职责 |
|--------|----------|
| `cw-elevator-application-common` | 公共枚举、常量、工具、跨层 DTO/注解等 |
| `cw-elevator-application-data` | MyBatis 实体、Mapper、DAO 与数据源相关 |
| `cw-elevator-application-service` | 业务实现:`PersonRuleServiceImpl`、设备服务、记录服务等 |
| `cw-elevator-application-web` | Spring MVC 控制器,对外 HTTP API(如 `/elevator/person/add/visitor` |
**技术栈摘要**
- Spring Boot **2.1.x**、Java **1.8**
- MyBatis、分库分表(ShardingSphere 等版本在父 POM 属性中集中管理)
- 依赖 **`cloudwalk-common-*`**、**`intelligent-cwoscomponent-rest`** 等(与智能侧、组织侧集成)
**与运行包、源码归档的关系**
- 父 POM 中属性 **`cw.elevator.v1.lib.dir`**`${project.basedir}/../cw-elevator-application-V1.0.0.20211103/lib`)与 **V1 运行包 `lib` 目录** 对齐,便于 `install-file` 或私服核对。
- **`artifacts/decompiled/trees/cw-elevator-application-*-SNAPSHOT.jar.src`** 为历史解压对照;**日常改代码以 `maven-cw-elevator-application` 下各模块为准**。
---
### 3.3 `maven-intelligent-cwoscomponent` — 智能组件(接口 + REST)
**定位**
**智能操作系统组件(CWOS Component**:对上提供 **REST / Feign Client** 入口,对下通过 **Feign** 调用组织人员、电梯、图库、空间等微服务。在业务文档中常作为「第三方或网关」与 **`cw-elevator-application`** 之间的中转层(例如 `ElevatorPersonService.addVisitor` → Feign → `POST /elevator/person/add/visitor`)。
**子模块说明**
| 子模块 | 职责 |
|--------|------|
| `intelligent-cwoscomponent-parent` | 占位/对齐原多模块父工程坐标(若子模块引用需要) |
| `intelligent-cwoscomponent-interface` | API、参数、结果 DTO、对外 Service 接口定义 |
| `intelligent-cwoscomponent-rest` | 接口实现、Feign 客户端声明、与 Spring Cloud 集成 |
**技术栈摘要**
- Spring Boot **2.1.x**、Spring Cloud **Greenwich**
- 管理 **`cloudwalk-device-sdk-protocol-entity`** 等与设备协议相关的版本(父 POM 注释与 V1 `lib` 对齐)
**与其它工程关系**
- **`maven-cw-elevator-application`** 依赖 **`intelligent-cwoscomponent-rest`**(或同版本构件),形成「智能组件编排 ↔ 电梯落地」的链路。
- **`maven-ninca-crk`** 的 `ninca-crk-gpu-std`**`intelligent-cwoscomponent-rest`** 存在 **exclusion** 等精细依赖控制,说明 CRK 打包场景下需避免重复引入或版本冲突,以实际 **`ninca-crk-gpu-std/pom.xml`** 为准。
---
### 3.4 `maven-ninca-crk` — NINCA CRK 产品线(当前聚合 GPU 标准后端)
**定位**
**NINCA CRK**(门禁、考勤、访客、会议等组合能力)产品族中的 **标准 GPU 出入口后端** 工程 **`ninca-crk-gpu-std`**。子模块描述中体现为轻舟 1.4 体系下的 **标准 GPU 服务器-出入口版**;考勤、访客、门禁等大量 **web 模块以私服版本依赖** 引入,**不在本 reactor 的 `modules` 列表中展开**。
**为何使用 Boot 1.5 + Edgware**
父 POM 说明:为 **贴近原 `spring-boot-maven-plugin` 1.3.x 时代栈**,采用 Spring Boot **1.5.22** 与 Spring Cloud **Edgware**,减少与历史 fat jar 字节码、依赖树差异带来的构建问题。
**技术栈摘要**
- Spring Boot **1.5.x**、Cloud **Edgware**
- Java **1.8**
-**`intelligent-cwoscomponent-rest`**、**`cloudwalk-common-event`** 等版本在父 POM `dependencyManagement` 中锁定
**与其它工程关系**
依赖本仓库整理的 **`intelligent-cwoscomponent-rest`**、**`cloudwalk-common-event`** 等;更多 `ninca-crk-*` 构件从 Nexus 拉取。
---
### 3.5 `maven-ninca-qk-alarm` — 轻舟告警应用(Starter 聚合)
**定位**
**区域告警 / 轻舟告警(qk-alarm)** 可执行应用的 Maven 化聚合:原 **`ninca-qk-alarm-app`** 父 POM 缺失,由本 **`ninca-qk-alarm-reactor`** 补齐 **`dependencyManagement`、插件版本、编码** 等,当前 reactor **直接列出的模块**为 **`ninca-qk-alarm-app-starter`**(可执行 JAR 形态业务的启动与组装入口)。
**子模块 `ninca-qk-alarm-app-starter` 说明**
- 依赖 **`ninca-qk-alarm-app-web`**、**`ninca-qk-alarm-app-interface`** 等同版本子构件,形成完整 Web + 接口层。
- 使用 **Curator + ZooKeeper**(版本在父 POM 统一管理),适用于注册发现或分布式协调类能力(以实际代码为准)。
**技术栈摘要**
- Spring Boot **2.1.x**、Java **1.8**
- MyBatis Spring Boot、Jacoco 等插件在父 POM `pluginManagement` 中声明
**与其它工程关系**
主要依赖 **`cloudwalk-common-web`** 等云从公共 Web 能力;与电梯、智能组件无强绑定,相对 **独立部署单元**
---
### 3.6 `maven-cloudwalk-device-sdk` — 设备 SDK 父 POM(协议实体)
**定位**
私服常缺失 **`cn.cloudwalk:cloudwalk-device-sdk:2.2.0`** 父 `pom`,导致无法解析 **`cloudwalk-device-sdk-protocol-entity`**。本反应堆在本地 **`install`** 后,**`maven-intelligent-cwoscomponent`** 的 **`intelligent-cwoscomponent-interface`** 可正常解析该依赖。
**子模块**
- **`cloudwalk-device-sdk-protocol-entity`**:源码来自 `反1` 反编译 zip,与运行包 **2.2.0** 坐标一致。
---
### 3.7 `maven-cwos-resource` — CWOS 资源 / 门户 / Java SDK
**定位**
补齐 **`cwos-component-resource`**、**`cwos-portal`** 父 POM 及 **`cwos-java-sdk-resource`**,使 **`cw-elevator-application-service`** 不再因私服缺 **`cwos-component-resource:pom`**、**`cwos-portal:pom`** 而失败。
**子模块要点**
- **`cwos-component-resource-data`** / **`cwos-component-resource-interface`**:反编译源码。
- **`cwos-portal-interface`**:为闭合 **`cwos-java-sdk-resource`** 的编译 classpath,已 **裁剪** 非 SDK 所需包,并含 **`cwos-device-pkg-stub`**`DeviceUpgradeResult` 占位)。
- **`cwos-java-sdk-resource`**Feign 注解由 **`org.springframework.cloud.netflix.feign.FeignClient`** 迁移为 **`org.springframework.cloud.openfeign.FeignClient`**,与 **Greenwich + `spring-cloud-starter-openfeign`** 一致;**`ResourceBeanConfig`** 补全缺失的 `import`
---
### 3.8 `maven-cloudwalk-intelligent-davinci-manager` — Davinci 存储父链
**定位**
私服常缺失 **`cn.cloudwalk.intelligent:cloudwalk-intelligent-davinci-manager:1.1.7-SNAPSHOT`** 父 `pom`,导致无法解析 **`davinci-manager-storage`**(电梯 **`cw-elevator-application-service`** 直接依赖)。本反应堆在本地 **`install`** 后,可闭合该父链。
**子模块**
- **`davinci-manager-common`**`DavinciResult``DavinciServiceException` 等。
- **`davinci-manager-storage`**:文件/分片上传 Feign 与 **`FileStorageManager` / `FilePartManager`** 实现;**`io.github.openfeign:feign-okhttp`** 替代原 POM 中的 **`com.netflix.feign:feign-okhttp`**,与 **Spring Cloud Greenwich** 管理的 OpenFeign 一致。
---
### 3.9 `maven-cloudwalk-legacy-public` — 反1 私服公共线(3.7.2 + cwos-sdk-event + lock
**定位**
**`反1/`** 内 **`cloudwalk-common-*-3.7.2-Brussels-SRX.jar.src.zip`**、**`cwos-sdk-event-1.5.0-SNAPSHOT.jar.src.zip`**、**`cloudwalk-intelligent-component-lock-1.1.1-SNAPSHOT.jar.src.zip`** 解压为 Maven 子模块并 **`install`**,闭合 **`cloudwalk.legacy.public.version`**、**`cwos.sdk.event.version`**、**`intelligent.lock.version`** 等横切依赖。
**子模块要点**
- **`cloudwalk-cloud-common`****`3.7.2-Brussels-SRX`** 父 `pom`(继承 **Boot 1.5.22**);与 **`maven-cloudwalk-cloud`** 中 **4.0.0** 的 stub **`cloudwalk-cloud-common`** 为**不同版本**,勿混用。
- **`cloudwalk-common-result`**:在反编译依赖外补 **Spring / Jackson / Joda / SLF4J / validation-api**
- **`cwos-sdk-event`****`reflections-maven`** → **`org.reflections:reflections`****`KafkaConsumer`** 实现 **`Consumer#setListenerClass(Class)`****`EventClient`** 使用 **`commons-lang3.StringUtils`**。
---
### 3.10 `maven-cloudwalk-device-manager` — 设备管理 common / interface2.0.2
**定位**
私服常缺失 **`cn.cloudwalk.cloud:cloudwalk-device-manager:2.0.2`** 父 `pom`,导致无法解析 **`cloudwalk-device-manager-common`**、**`cloudwalk-device-manager-interface`**。本反应堆在本地 **`install`** 后闭合该父链。
**子模块**
- **`cloudwalk-device-manager-common`**、**`cloudwalk-device-manager-interface`**:源码来自 **`反1/`** 下 **`cloudwalk-device-manager-*-2.0.2.jar.src.zip`**。父 POM 将 **`cloudwalk-common-result`** 锁定为 **`3.7.2-Brussels-SRX`**(与 **`maven-cloudwalk-legacy-public`** 一致);**`hibernate-validator`** 与 **Boot 2.1.18** 栈对齐(**6.0.22.Final**)。
**与其它工程关系**
须在 **`maven-cloudwalk-legacy-public`** 成功 **`install`**(提供 **`cloudwalk-common-result:3.7.2`**)之后,再 **`install`** 本反应堆。
---
### 3.11 `maven-cwos-common-aks` / `maven-cwos-device-authentication` — AKS 与设备认证 interface1.0.0-SNAPSHOT
**定位**
**`cw-elevator-application-V1.0.0.20211103/cw_lib`** 中 **`cwos-common-aks-interface`**、**`cwos-device-authentication-interface`** 同名坐标对齐;私服若缺 **`cwos-common-aks`**、**`cwos-device-authentication`** 父 POM,可在本地 **`install`** 闭合。
**子模块**
- **`cwos-common-aks-interface`**、**`cwos-device-authentication-interface`**:源码来自 **`反1/`** 对应 **`*.jar.src.zip`**。
- **device-authentication** 的 **`pom`** 依赖 **`cloudwalk-common-service`**、**`cloudwalk-device-manager-interface`**、**`cwos-common-aks-interface`**、**`cloudwalk-device-sdk-protocol-entity`** 等,编译顺序见 [本地编译说明.md](../build/本地编译说明.md) §3。
---
## 4. 工程间依赖与协作(简图)
下列关系表示 **Maven 依赖 / 常见运行时调用方向**,非严格部署拓扑。
```mermaid
flowchart LR
subgraph devsdk [maven-cloudwalk-device-sdk]
PE[protocol-entity]
end
subgraph cwos [maven-cwos-resource]
SDK[cwos-java-sdk-resource]
end
subgraph davinci [maven-cloudwalk-intelligent-davinci-manager]
DMS[davinci-manager-storage]
end
subgraph cloud [maven-cloudwalk-cloud]
CE[cloudwalk-common-event]
CS[cloudwalk-common-service]
end
subgraph intel [maven-intelligent-cwoscomponent]
II[intelligent-cwoscomponent-interface]
IR[intelligent-cwoscomponent-rest]
end
subgraph elev [maven-cw-elevator-application]
EW[cw-elevator-application-web]
ES[cw-elevator-application-service]
end
subgraph crk [maven-ninca-crk]
GPU[ninca-crk-gpu-std]
end
subgraph alarm [maven-ninca-qk-alarm]
ST[ninca-qk-alarm-app-starter]
end
PE --> II
II --> IR
SDK --> ES
DMS --> ES
CE --> ES
CS --> ES
IR --> ES
ES --> EW
CE --> GPU
IR -.->|可能被 exclusion| GPU
CS --> ST
```
**文字归纳**
- **`maven-cloudwalk-device-sdk`** 为 **`intelligent-cwoscomponent-interface`** 提供 **`cloudwalk-device-sdk-protocol-entity`****`maven-cwos-resource`** 为 **`cw-elevator-application-service`** 提供 **`cwos-java-sdk-resource`**(及 portal/resource 父链);**`maven-cloudwalk-intelligent-davinci-manager`** 为 **`cw-elevator-application-service`** 提供 **`davinci-manager-storage`** 父链;**`maven-cloudwalk-legacy-public`** 为 **`cloudwalk-common-event`**、电梯 **common**、**`cwos-resource`** 等提供 **`cloudwalk-common-result`/`web`/`serial`3.7.2**、**`cwos-sdk-event`**、**`component-lock`****`maven-cloudwalk-device-manager`** 提供 **`cloudwalk-device-manager:2.0.2`** 及 **common/interface**(依赖前述 **`cloudwalk-common-result:3.7.2`**);**`maven-cwos-common-aks`**、**`maven-cwos-device-authentication`** 与 **`cw_lib`** 中 AKS / 设备认证 **interface** 坐标对齐(详见 §3.11)。前序 **`install`** 顺序见 [本地编译说明.md](../build/本地编译说明.md) §3。
- **电梯应用** 依赖 **公共云模块** + **智能组件 REST**,对外暴露电梯 HTTP API;智能组件再通过 Feign 回调电梯、组织等。
- **CRK GPU 标准后端** 依赖公共事件、智能组件等,与考勤/访客等 **NINCA 模块** 打成一个可部署单元(具体以 `ninca-crk-gpu-std/pom.xml` 为准)。
- **告警应用** 相对独立,主要挂 **CloudWalk Web 公共栈**
---
## 5. 源码目录、`artifacts`、运行包三者的分工
| 位置 | 性质 | 建议使用方式 |
|------|------|----------------|
| **`maven-*/*/src/main/java`** | 已整理为 Maven 标准目录的 **主修改区** | 日常开发、编译、`mvn validate/package` |
| **`artifacts/decompiled/trees/*.jar.src`** | 由 JAR 还原的 **解压树归档**(对照用) | 查历史包内资源、与 `META-INF/maven` 对照版本 |
| **`artifacts/decompiled/archives/*.jar.src.zip`** | 未解压的 **zip 备份** | 备份、交付留档 |
| **`cw-elevator-application-V1.0.0.20211103/`** | **V1 运行包展开**(含 `lib/` | 对齐线上依赖列表;`docs/operations/deploy_cw_elevator_v1_lib_to_nexus.py` 默认读取其 `lib` |
详见 [artifacts/decompiled/README.md](../../artifacts/decompiled/README.md)。
---
## 6. 构建与环境(延伸阅读)
- **JDK 版本依据**[ORIGINAL_BUILD_JDK.txt](../build/ORIGINAL_BUILD_JDK.txt)
- **各父 POM** 中 **`maven-enforcer-plugin`** 要求使用 JDK 8 范围,与上述依据一致。
- **代码风格**`docs/style/alibaba-eclipse-codestyle.xml`,各聚合工程通过属性 **`alibaba.eclipse.codestyle.path`** 引用。
- **私服与上传脚本**`docs/operations/deploy_cw_elevator_v1_lib_to_nexus.py`Nexus 地址见各父 POM 中 `nexus.baseUrl` 注释。
---
## 7. 文档维护
- 若新增其它 `maven-*` 反应堆,请在本表与各节补充 **目录、artifactId、modules、与其它工程的依赖边**,并更新 [Maven工作区子工程版本一览](Maven工作区子工程版本一览.md) 与 [本地编译说明.md](../build/本地编译说明.md) §3。
- 若 Spring Boot / Cloud 版本升级,请以各 **`maven-*/pom.xml`** 为准同步更新本文「技术栈摘要」小节。