1. parent
- 定义: 这是指一个项目的父 POM(Project Object Model)。在 Maven 中,父 POM 可以包含共享的配置、依赖和插件设置,使多个子项目可以继承这些设置。
- 作用: 通过指定父 POM,子项目可以自动获取父项目中定义的依赖版本、插件配置等,减少重复配置,提高一致性。例如,所有子模块都可以使用父 POM 中定义的 Spring Boot 版本。
2. packaging
- 定义: 这是指项目的打包类型。在 Maven 中,常见的打包类型有:
jar
: 打包成 Java Archive 文件。war
: 打包成 Web Application Archive 文件,用于部署到服务器。pom
: 表示这个项目本身是一个 POM 文件,通常用于作为一个聚合项目(即包含多个模块的项目),而不是直接生成可执行的 JAR 或 WAR 文件。
- 作用: 通过指定打包类型,Maven 知道如何处理该项目,比如如何编译、打包以及如何生成最终的构件。
3. modules
- 定义: 这是一个子元素,用于列出当前项目包含的所有子模块。每个子模块都有自己的 POM 文件,并且可以独立构建。
- 作用: 通过在父 POM 中列出子模块,Maven 可以处理这些模块的构建顺序和依赖关系。例如,父项目中的某个模块可能依赖于另一个模块,Maven 会确保在构建时先构建被依赖的模块。
小结
- parent: 用于继承配置和依赖,减少重复。
- packaging: 指定项目的打包方式。
- modules: 列出所有子模块,管理它们的构建顺序和依赖。