本地私有开发规范
本文档面向 私有部署(private) 场景下的本地开发、构建与调试,区别于 SaaS 多租户模式。
1. 环境要求
| 工具 | 版本要求 | 说明 |
|---|---|---|
| Java | 17+ | 建议 Eclipse Adoptium / Microsoft JDK |
| Kotlin | 1.9.24 | 由 Gradle 插件管理 |
| Gradle | 8.13+ | 使用项目自带的 gradlew 包装器 |
| Node.js | 18+ | 仅用于前端开发 |
| pnpm / npm | 最新稳定版 | 前端依赖管理 |
| MySQL | 8.0+ / PostgreSQL | 数据库 |
| Git | 2.40+ | 版本控制 |
Windows 特别注意
- 请使用 PowerShell 执行 Gradle 命令。
JAVA_HOME必须显式指向 JDK 17 安装目录。- 避免在
.gitignore忽略的目录(如.gradle/)下执行构建命令。
# PowerShell 示例
$env:JAVA_HOME = "C:\Program Files\Eclipse Adoptium\jdk-17.0.13.11-hotspot"
& "E:\develop-space\dimebia-com\gradlew" build -x test
2. 项目结构
dimebia-com/
├── core/ # MIT License - 核心领域层
│ ├── model/ # JPA 实体
│ ├── repository/ # 数据访问层(JPA + jOOQ)
│ ├── service/ # 业务逻辑
│ ├── account/ # 账户管理
│ ├── billing/ # 计费引擎
│ ├── reconciliation/ # 对账引擎
│ ├── tax/ # 税务计算
│ ├── plugin/ # 支付插件系统
│ ├── invoice/ # 发票管理
│ ├── iso20022/ # ISO 20022 消息
│ ├── dto/ # 数据传输对象
│ ├── util/ # 工具类
│ ├── exception/ # 异常处理
│ └── audit/ # 审计日志
├── saas/ # Commercial License - SaaS 扩展
│ ├── config/ # 租户配置
│ ├── security/ # JWT、认证
│ ├── notification/ # 邮件、短信、Webhook
│ ├── report/ # 报表服务
│ └── admin/ # 管理后台
├── boot/ # MIT License - 应用启动模块
│ ├── src/main/kotlin/.../controller/ # REST 控制器
│ ├── src/main/kotlin/.../configuration/ # 配置类
│ ├── src/main/resources/ # 配置文件、Flyway 迁移
│ └── src/main/resources/webapp/ # 前端构建产物(自动复制)
├── admin-ui/ # MIT License - Web 管理界面
│ ├── src/
│ │ ├── lib/
│ │ │ ├── api/ # API 客户端
│ │ │ ├── components/ # Svelte UI 组件