maven简介
只是简单的了解一下maven的功能。
Maven的核心功能便是合理叙述项目间的依赖关系,通俗点讲,就是通过pom.xml文件的配置获取jar包,而不用手动去添加jar包。
Maven就是是专门为Java项目打造的管理和构建工具,它的主要功能有:
提供了一套标准化的项目结构;
提供了一套标准化的构建流程(编译,测试,打包,发布……);
提供了一套依赖管理机制。
一个使用Maven管理的普通的Java项目,它的目录结构默认如下:
a-maven-project
├── pom.xml
├── src
│ ├── main
│ │ ├── java
│ │ └── resources
│ └── test
│ ├── java
│ └── resources
└── target
项目的根目录a-maven-project是项目名,它有一个项目描述文件pom.xml,存放Java源码的目录是src/main/java,存放资源文件的目录是src/main/resources,存放测试源码的目录是src/test/java,存放测试资源的目录是src/test/resources,最后,所有编译、打包生成的文件都放在target目录里。这些就是一个Maven项目的标准目录结构。
Maven使用pom.xml定义项目内容,并使用预设的目录结构;
在Maven中声明一个依赖项可以自动下载并导入classpath;
Maven使用groupId,artifactId和version唯一定位一个依赖。
Maven通过解析依赖关系确定项目所需的jar包,常用的4种scope有:compile(默认)编译时需要用到该jar包,test-编译Test时需要用到该jar包,runtime-编译时不需要,但运行时需要用到和provided-编译时需要用到,但运行时由JDK或某个服务器提供;
Maven通过lifecycle、phase和goal来提供标准的构建流程。
最常用的构建命令是指定phase,然后让Maven执行到指定的phase:
mvn clean
mvn clean compile
mvn clean test
mvn clean package
通常情况,我们总是执行phase默认绑定的goal,因此不必指定goal。