# 46.5.3 Starter模块

starter模块实际是一个空jar。它的目的是提供使用该library所需的必要依赖。

不要对添加你的starter的项目做任何假设。如果你正在自动配置的library需要其他starter，一定要提到它。提供一个合适的默认依赖集可能比较困难，特别是存在大量可选依赖时，你应该避免引入任何非必需的依赖。换句话说，不应当包含可选的依赖。

**注** 无论哪种方式，你的starter必须直接或间接（如果你的starter依赖另外的starter，就不需要添加）地引用核心的Spring Boot starter（`spring-boot-starter`）。 如果一个项目只用你自定义的starter创建，Spring Boot的核心特性会因为核心starter的存在而启用。
