diff --git a/README.md b/README.md
index 3c16ebdf3587192c1d5201be134fbe73347c8493..2e42e56ff40b34ecc2a1b8e34c689cf006ae7a0c 100644
--- a/README.md
+++ b/README.md
@@ -1,37 +1,20 @@
# REC-规则引擎组件
#### 介绍
-REC(Rule engine component)-规则引擎组件:提供统一的规则处理方式和策略。
-#### 软件架构
-软件架构说明
-
-
-#### 安装教程
+REC(Rule engine component)规则引擎组件:提供统一的规则处理方式和策略。
-1. xxxx
-2. xxxx
-3. xxxx
-
-#### 使用说明
-
-1. xxxx
-2. xxxx
-3. xxxx
+#### 软件架构
-#### 参与贡献
+软件架构说明
-1. Fork 本仓库
-2. 新建 Feat_xxx 分支
-3. 提交代码
-4. 新建 Pull Request
+#### 分支迭代说明
+dev_v1_init_project:项目初始化,构建基础模块、结构、依赖等
-#### 特技
+#### 项目模块说明
-1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
-2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
-3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
-4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
-5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
-6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
+- rec-bom:bom包,管理所有
+- rec-spi:提供统一的核心构件规范
+- rec-common:提供公共工具类
+- rec-spring-boot-starter:SpringBoot启动器
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 4c3bea7d41f284e5413aefc264c6f8a551b385ae..3d198179986856b0107cc528bcb3b3d924219f05 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,11 +6,256 @@
cn.icanci.rec
rec-parent
- 1.0-SNAPSHOT
+ pom
+ ${revision}
+
+ rec-spi
+ rec-common
+ rec-spring-boot-starter
+ rec-bom
+
+
+ 1.0.0.0-SNAPSHOT
+
+ 1.8
+ UTF-8
8
8
+
+ 2.2.2.RELEASE
+
+ 3.4
+ 4.3
+ 19.0
+
+ 4.13.2
+
+ 1.7.30
+ 2.12.1
+ 2.13.3
+ 2.13.3
+ 3.3.4
+
+ 2.11.2
+ 1.2.70
+
+ 1.4.2.Final
+
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+
+
+ org.springframework.boot
+ spring-boot-starter-logging
+
+
+ ${spring.boot.version}
+ import
+ pom
+
+
+
+ org.apache.commons
+ commons-lang3
+ ${commons.lang3.version}
+
+
+ org.apache.commons
+ commons-collections4
+ ${commons.collections4.version}
+
+
+ com.google.guava
+ guava
+ ${guava.version}
+
+
+
+ com.fasterxml.jackson.core
+ jackson-core
+ ${jackson.version}
+
+
+ com.alibaba
+ fastjson
+ ${fastjson.version}
+
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+ ${jackson.version}
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ ${jackson.version}
+
+
+
+ junit
+ junit
+ ${junit.version}
+ test
+
+
+
+
+ org.slf4j
+ slf4j-api
+ ${org.slf4j.version}
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ ${log4j-slf4j-impl.version}
+
+
+
+ org.apache.logging.log4j
+ log4j-api
+ ${log4j-api.version}
+
+
+
+ org.apache.logging.log4j
+ log4j-core
+ ${log4j-core.version}
+
+
+
+ com.lmax
+ disruptor
+ ${disruptor.version}
+
+
+
+ org.mapstruct
+ mapstruct
+ ${mapstruct.version}
+
+
+
+
+
+
+
+ org.slf4j
+ slf4j-api
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+
+
+
+ org.apache.logging.log4j
+ log4j-api
+
+
+
+ org.apache.logging.log4j
+ log4j-core
+
+
+
+ com.lmax
+ disruptor
+
+
+ org.springframework.boot
+ spring-boot-starter-log4j2
+
+
+ junit
+ junit
+ test
+
+
+ com.fasterxml.jackson.core
+ jackson-core
+
+
+ com.alibaba
+ fastjson
+
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
+
+
+
+
+
+ org.codehaus.mojo
+ flatten-maven-plugin
+ 1.2.7
+
+ clean
+ true
+
+ remove
+ remove
+
+ ${project.build.directory}/flattened
+
+
+
+ flatten
+ process-resources
+
+ flatten
+
+
+
+ flatten.clean
+ clean
+
+ clean
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ 3.0.1
+
+
+ attach-sources
+ verify
+
+ jar-no-fork
+
+
+
+
+
+
+
+
+
+ org.codehaus.mojo
+ flatten-maven-plugin
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+
+
+
\ No newline at end of file
diff --git a/rec-bom/pom.xml b/rec-bom/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..9373caa58e054e3044b0338ff2ceea0c17e83581
--- /dev/null
+++ b/rec-bom/pom.xml
@@ -0,0 +1,38 @@
+
+
+
+ rec-parent
+ cn.icanci.rec
+ ${revision}
+
+ 4.0.0
+
+ rec-bom
+
+
+ 8
+ 8
+
+
+
+
+
+ cn.icanci.rec
+ rec-common
+ ${revision}
+
+
+ cn.icanci.rec
+ rec-spi
+ ${revision}
+
+
+ cn.icanci.rec
+ rec-spring-boot-starter
+ ${revision}
+
+
+
+
\ No newline at end of file
diff --git a/rec-common/pom.xml b/rec-common/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..fb3e314bf9d79b87451f16023906f7b9d4979c09
--- /dev/null
+++ b/rec-common/pom.xml
@@ -0,0 +1,19 @@
+
+
+
+ rec-parent
+ cn.icanci.rec
+ ${revision}
+
+ 4.0.0
+
+ rec-common
+
+
+ 8
+ 8
+
+
+
\ No newline at end of file
diff --git a/rec-common/src/main/java/cn/icanci/rec/common/package-info.java b/rec-common/src/main/java/cn/icanci/rec/common/package-info.java
new file mode 100644
index 0000000000000000000000000000000000000000..a2089f2e42443071da5de0d725333aad9abadc83
--- /dev/null
+++ b/rec-common/src/main/java/cn/icanci/rec/common/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * @author icanci
+ * @since 1.0 Created in 2022/07/06 23:02
+ */
+package cn.icanci.rec.common;
\ No newline at end of file
diff --git a/rec-spi/pom.xml b/rec-spi/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..511f9dd725fda80049b6e09c4d04be7eb6e13afd
--- /dev/null
+++ b/rec-spi/pom.xml
@@ -0,0 +1,26 @@
+
+
+
+ rec-parent
+ cn.icanci.rec
+ ${revision}
+
+ 4.0.0
+
+ rec-spi
+
+
+ 8
+ 8
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+
\ No newline at end of file
diff --git a/rec-spi/src/main/java/cn/icanci/rec/spi/package-info.java b/rec-spi/src/main/java/cn/icanci/rec/spi/package-info.java
new file mode 100644
index 0000000000000000000000000000000000000000..df091e986354e239f65e0c3733fa64a3b76621ce
--- /dev/null
+++ b/rec-spi/src/main/java/cn/icanci/rec/spi/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * @author icanci
+ * @since 1.0 Created in 2022/07/06 23:03
+ */
+package cn.icanci.rec.spi;
\ No newline at end of file
diff --git a/rec-spring-boot-starter/pom.xml b/rec-spring-boot-starter/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..27dffab448752ce9b83f5da15c0cee64e58cd467
--- /dev/null
+++ b/rec-spring-boot-starter/pom.xml
@@ -0,0 +1,39 @@
+
+
+
+ rec-parent
+ cn.icanci.rec
+ ${revision}
+
+ 4.0.0
+
+ rec-spring-boot-starter
+
+
+ 8
+ 8
+
+
+
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+ true
+
+
+ org.springframework.boot
+ spring-boot-starter
+
+
+ org.springframework.boot
+ spring-boot-autoconfigure
+
+
+ cn.icanci.rec
+ rec-spi
+ ${revision}
+
+
+
\ No newline at end of file
diff --git a/rec-spring-boot-starter/src/main/java/cn/icanci/rec/starter/config/RecContextAutoConfig.java b/rec-spring-boot-starter/src/main/java/cn/icanci/rec/starter/config/RecContextAutoConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..e06efe52c0d4e584e43a7aea20a897c7ed17f313
--- /dev/null
+++ b/rec-spring-boot-starter/src/main/java/cn/icanci/rec/starter/config/RecContextAutoConfig.java
@@ -0,0 +1,32 @@
+package cn.icanci.rec.starter.config;
+
+import org.springframework.beans.BeansException;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * TODO Spring启动器
+ *
+ * @author icanci
+ * @since 1.0 Created in 2022/07/06 23:05
+ */
+@Configuration
+public class RecContextAutoConfig implements ApplicationContextAware, CommandLineRunner {
+
+ /**
+ * Spring 上下文
+ */
+ private ApplicationContext context;
+
+ @Override
+ public void run(String... args) throws Exception {
+
+ }
+
+ @Override
+ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
+ context = applicationContext;
+ }
+}
diff --git a/rec-spring-boot-starter/src/main/java/cn/icanci/rec/starter/package-info.java b/rec-spring-boot-starter/src/main/java/cn/icanci/rec/starter/package-info.java
new file mode 100644
index 0000000000000000000000000000000000000000..5f4643062e1fec6d2fe061a3da0d171de785192c
--- /dev/null
+++ b/rec-spring-boot-starter/src/main/java/cn/icanci/rec/starter/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * @author icanci
+ * @since 1.0 Created in 2022/07/06 23:04
+ */
+package cn.icanci.rec.starter;
\ No newline at end of file
diff --git a/rec-spring-boot-starter/src/main/resources/META-INF/spring.factories b/rec-spring-boot-starter/src/main/resources/META-INF/spring.factories
new file mode 100755
index 0000000000000000000000000000000000000000..f18876624cd7c6e5d4c01182728af9557c993284
--- /dev/null
+++ b/rec-spring-boot-starter/src/main/resources/META-INF/spring.factories
@@ -0,0 +1 @@
+org.springframework.boot.autoconfigure.EnableAutoConfiguration=cn.icanci.rec.starter.config
\ No newline at end of file