Files
JChargePointProtocol/docs/开发者指南.md
三丙 771b10eb10 docs: 更新开发者指南和系统概述,简化内容并增强可读性
- 精简开发者指南,聚焦于本地开发流程和环境准备
- 更新系统概述,明确系统定位和核心能力
- 删除冗余引用和目录,优化文档结构
2026-05-08 15:27:19 +08:00

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