Files
JChargePointProtocol/docs/开发者指南.md

109 lines
2.3 KiB
Markdown
Raw Normal View History

2025-10-28 14:39:06 +08:00
# 开发者指南
本文档面向首次参与 JChargePointProtocol 开发的同学,提供一套可执行的本地开发流程。
2025-10-28 14:39:06 +08:00
## 1. 环境准备
2025-10-28 14:39:06 +08:00
请先安装以下工具并确保命令可用:
2025-10-28 14:39:06 +08:00
- JDK 21
- Maven 3.9+
- Node.js 18+(建议 LTS
- Docker / Docker Compose
2025-10-28 14:39:06 +08:00
建议验证:
2025-10-28 14:39:06 +08:00
```bash
java -version
mvn -version
node -v
docker -v
2025-10-28 14:39:06 +08:00
```
## 2. 获取代码
2025-10-28 14:39:06 +08:00
```bash
git clone https://github.com/sanbing-java/JChargePointProtocol.git
cd JChargePointProtocol
2025-10-28 14:39:06 +08:00
```
## 3. 启动依赖服务
2025-10-28 14:39:06 +08:00
优先使用项目脚本:
2025-10-28 14:39:06 +08:00
```bash
bash docker/start.sh
2025-10-28 14:39:06 +08:00
```
若需手动启动,可按环境组合对应的 compose 文件PostgreSQL/Redis/Kafka
2025-10-28 14:39:06 +08:00
## 4. 后端构建与运行
2025-10-28 14:39:06 +08:00
### 4.1 全量构建(推荐)
2025-10-28 14:39:06 +08:00
```bash
mvn clean license:format install
2025-10-28 14:39:06 +08:00
```
### 4.2 启动应用服务
2025-10-28 14:39:06 +08:00
```bash
mvn spring-boot:run -pl jcpp-app-bootstrap
2025-10-28 14:39:06 +08:00
```
### 4.3 启动协议服务(微服务模式)
2025-10-28 14:39:06 +08:00
```bash
mvn spring-boot:run -pl jcpp-protocol-bootstrap
2025-10-28 14:39:06 +08:00
```
## 5. 前端构建与运行
2025-10-28 14:39:06 +08:00
```bash
cd jcpp-web-ui
npm install
npm run dev
2025-10-28 14:39:06 +08:00
```
默认情况下通过前端开发服务器访问页面,后端接口走代理配置。
2025-10-28 14:39:06 +08:00
## 6. 常用开发任务
2025-10-28 14:39:06 +08:00
### 6.1 新增协议实现
2025-10-28 14:39:06 +08:00
1. 在对应 `jcpp-protocol-*` 模块新增协议 bootstrap 与命令处理器
2. 对齐上行解析、下行编码、会话管理
3. 增加必要测试与文档(`核心模块详解/协议实现模块/`
2025-10-28 14:39:06 +08:00
### 6.2 新增业务接口
2025-10-28 14:39:06 +08:00
1.`jcpp-app` 中补充 Service 与 Controller
2. 同步更新 `API接口参考/`
3. 联调协议层下行/上行链路
2025-10-28 14:39:06 +08:00
### 6.3 数据模型变更
2025-10-28 14:39:06 +08:00
1. 更新实体、Mapper 与 SQL 迁移
2. 同步更新 `数据模型与数据库设计.md`
3. 执行回归验证
2025-10-28 14:39:06 +08:00
## 7. 调试建议
2025-10-28 14:39:06 +08:00
- 优先看协议层连接与会话日志,再看业务层处理日志
- 问题定位按链路走:连接建立 -> 报文解析 -> 消息转发 -> 业务处理 -> 回包
- 关注缓存与会话一致性,避免“会话存在但通道失效”类问题
2025-10-28 14:39:06 +08:00
## 8. 提交前检查清单
2025-10-28 14:39:06 +08:00
- 编译通过:`mvn clean license:format install`
- 核心链路自测通过(至少覆盖一条上行与一条下行)
- 文档已同步(接口/架构/运维任一变更都需更新)
- 无明显日志污染与调试代码残留
2025-10-28 14:39:06 +08:00
## 9. 相关文档
2025-10-28 14:39:06 +08:00
- `系统概述.md`
- `架构设计/架构设计.md`
- `核心模块详解/核心模块详解.md`
- `监控与运维.md`