Maven 是一个项目管理工具,基于项目对象模型(POM)概念,利用一个中央信息片断管理一个项目的构建、依赖管理、报告、文档等。
Maven的作用(摘录)
每个Java项目的目录结构都没有一个统一的标准,配置文件到处都是,单元测试代码到底应该放在那里也没有一个权威的规范。因此,使用Maven这个工具,可以帮助规范开发,统一管理jar包等。
Maven 能够帮助开发者完成以下工作:
- 构建
- 依赖
- 文档生成
- 报告
- SCMs
- 发布
- 分发
- 邮件列表
Maven 使用约定优于配置的原则
目录 | 用途 |
${basedir} | 存放pom.xml和所有的子目录 |
${basedir}/src/main/java | 项目的java源代码 |
${basedir}/src/main/resources | 项目的资源,比如说property文件,springmvc.xml |
${basedir}/src/test/java | 项目的测试类,比如说Junit代码 |
${basedir}/src/test/resources | 测试用的资源 |
${basedir}/src/main/webapp/WEB-INF | web应用文件目录,web项目的信息,比如存放web.xml、本地图片、jsp视图页面 |
${basedir}/target | 打包输出目录 |
${basedir}/target/classes | 编译输出目录 |
${basedir}/target/test-classes | 测试编译输出目录 |
Test.java | Maven只会自动运行符合该命名规则的测试类 |
~/.m2/repository | Maven默认的本地仓库目录位置 |
Maven POM