# 模组开发 此处将会简单介绍一下如何开发一个能够自动装配的模组。 ## 构建项目 首先,导入你所需要使用的依赖。既然到了这一步,怎么导入依赖就不需要介绍了吧~ 不管是导入核心、导入组件还是导入其他什么都无所谓。 然后编写代码。 <br> 你可以配合核心`1.12+`之后,`@Beans`注解所新增的`init()`参数与`priority()`参数来修改/覆盖一些框架内部的原始Bean的注入,核心与组件也会逐步变更结构,开放可覆盖的依赖。 <br> 编写完成后即可配合下述的工厂文件来实现在存在核心(`1.12+`)框架的时候自动装配依赖。 <br> ## factory工厂文件 做过Springboot启动器的同学应该对`spring.factories`文件不陌生。对于模组,我也提供了一个类似的文件:`module.factory` 将文件放在项目`resources`资源目录下的`simbot/factory/module.factory`下,在核心启动的时候便会自动读取。 为了方便,`module.factory`文件将会直接使用`Properties`进行读取,因此,其文件格式与`properties`文件格式一致。 下述配置内容中,如果想要有多个,使用`,`(半角英文逗号) 分割。 ## 配置内容 * **`load.bean`** 加载指定的类到依赖中心进行解析。 例如: module.factory : ```properties load.bean=com.simplerobot.modules.delay.DelayHelperConfiguration ``` DelayHelperConfiguration.java : ```java /** * delayHelper配置类,将DelayHelper的单例实例装配到依赖中心 */ @Beans public class DelayHelperConfiguration { @Beans("delayHelper") public DelayHelper getDelayHelper(){ return DelayHelper.getInstance(); } } ``` * **`load.scan`** 追加扫描一个指定的包路径。 例如: module.factory : ```properties load.scan=com.simplerobot.modules ```