Maven 项目初识

136 阅读2分钟

什么是 Maven 项目?

项目管理和构建自动化工具,主要用于 Java 项目的构建、管理和依赖管理。

典型的 Maven 项目结构

Maven 强制项目遵循标准的结构

my-app/
 ├── pom.xml                 ← Maven 配置文件(项目元数据、依赖关系、插件等)
 ├── src/
 │    ├── main/
 │    │    ├── java/         ← Java 源代码
 │    │    ├── resources/    ← 资源文件(如配置文件、静态文件等)
 │    ├── test/
 │    │    ├── java/         ← 测试代码
 │    │    ├── resources/    ← 测试资源文件
 └── target/                 ← 编译后的输出目录

Maven 适用于什么场景?

  • 大型项目和多模块项目:管理大型项目中的多个模块和模块间的依赖。
  • 依赖复杂的项目:轻松地添加、更新和删除库依赖,并自动处理依赖之间的关系。
  • 团队协作开发:使用相同的构建和依赖配置,从而避免了“在我机器上能工作”的问题。
  • CI/CD 流程(持续集成/持续部署) :可以与 CI/CD 工具(如 Jenkins、GitLab CI 等)结合,自动化构建、测试和部署过程。
  • 跨平台开发:在 Windows、Linux 和 macOS 等平台上使用相同的构建配置和命令。

pom.xml 文件是否是必须的?

对于 Maven 项目pom.xml 文件是必须的,因为它是 Maven 项目的核心配置文件,用来定义项目的元数据、依赖关系、构建配置等。

  • 定义项目依赖:它指定了项目运行或构建所需的所有依赖库。

  • 构建配置:配置如何编译、打包和发布项目。

  • 插件管理:配置构建插件,例如 Maven Compiler 插件用于编译代码,Spring Boot 插件用于打包和运行 Spring Boot 应用。

  • 项目元数据:如项目的 groupIdartifactIdversion 等标识。

src 文件夹是固定的吗?

在 Maven 项目中,src 文件夹是固定的,是放置源代码和资源文件的地方。它下面会有几个标准子目录,通常是:

  • src/main/java:放置应用程序的源代码(Java 类)。
  • src/main/resources:放置应用程序的资源文件,如配置文件、模板文件等。
  • src/test/java:放置单元测试代码。
  • src/test/resources:放置测试资源文件。