## 1. 本工程结构说明

- workflow-engine-api: Feign 接口 module, 采用 SpringBoot Starter 方式对外提供, 该包中使用对象模型, 都引用自 common 模块.
  需要特别注意的是, 由于绝大部分的 Feign API 都会提供对应的 WebApi, 但由于 MVC 与 OpenFeign 默认不会同时解析对应的
  MappingAdapter, 而目前所有的 Feign API 的实现都是 Server 模块中的 Controller, 所以在 Server 模块中的 Controller 需要单独设置
  Feign 的请求路径.
- workflow-engine-common: 通用的公共模型以及常量
- workflow-engine-core: 该 module 的目的是以 jar 包的方式,提供给二/三方应用集成,而不依赖本工程.
- workflow-engine-server: 本工程的启动目录, 提供 Web 相关功能以及特性

## 2. 启动方式

> 在 workflow-engine-server 模块下, 设置好了 bootstrap.yml, 一般情况直接设置对应的 active profiles 即可.
> 由于各个环境中的组件地址可能存在配置的是基于 K8S DNS 的内网域名,本地启动会无法连接, 所以建议通过 VM Options/ Program
> arguments/ Environment 等方式对 Nacos 中的默认配置进行覆盖即可.
>
> **严禁随意调整 Bootstrap.yml 配置文件内容**

目前提供了四种 Profile 的 nacos 地址配置信息

- local: 一般用于本地开发
  > 该环境比较特殊, 用于连接自己本地的数据库, 注意账号密码请用VM 参数/启动入参/环境变量的方式进行本地覆盖
  > ```text
  >  -Dspring.datasource.username=root -Dspring.datasource.password=123456
  > ```
  > ![start-config.png](imgs/start-config.png)

- dev: 一般用于开发联调, 连接的均是服务器环境
- test: 一般用于提测, 连接的均是服务器环境
- pre: 一般用于上线前验收, 连接的均是服务器环境


