获取与组织 Samples 项目

单仓项目结构

Macula Samples 将后端、前端和部署配置放在同一 Git 仓库中。根 pom.xml 聚合八个后端模块,deploy/ 统一维护本地编排;Admin 前端在自身目录构建,不属于 Maven 聚合模块。

macula-samples/
├── pom.xml
├── deploy/
├── macula-samples-parent/
├── macula-samples-api/
├── macula-samples-gateway/
├── macula-samples-admin-bff/
├── macula-samples-service1/
├── macula-samples-basic/
├── macula-samples-openapi/
├── macula-samples-thirdparty/
└── macula-samples-admin/

应用内的依赖关系

  • Parent 统一后端依赖、插件与环境 profile,运行模块继承该 Parent。
  • API 聚合 Basic API 和 Service1 API,放置可被其他服务引用的接口契约。
  • BFF 依赖 Service1 API,通过 Feign 调用 Service1;业务实现留在 Service1 中。
  • Gateway 路由到 BFF / OpenAPI,Admin 通过同源 /api 访问 Gateway。
  • Basic、Thirdparty 与 OpenAPI 是不同职责的运行模块,按实际业务扩展。

完整说明见模块说明。API 与 Parent 不作为独立的 Spring Boot 服务启动。

建立自己的业务项目

以 Samples 作为参考时,先确定应用名、模块职责、API 契约和平台登记信息,再调整包名、构建坐标与配置。应用名需要同时对应服务发现名称、Feign 目标和 Nacos Data ID。

Macula Boot 另提供 Archetype 生成项目骨架;本章的模块和配置说明以 Samples 仓库为准,生成后也应逐项核对目标版本的实际文件。

下一步:按配置规范设置各环境,再参照开发业务服务实现业务。