maven约定的目录结构
约定是大家都遵循的一个规则每一个maven项目在磁盘中都是一个文件夹(项目-Hello)Hello/---/src------/main #放你的主程序java代码和配置文件----------/java #你的程序包和包中的java文件---------/resources #你的java程序中要使用的配置文件------/test #放你的测试代码和文件(可以没有)----------/java #测试程序包和包中的java文件---------/resources #测试java程序中要使用的配置文件---/pom.xml #maven的核心文件(maven项目必须有)
对于某个依赖,Maven只需要3个变量即可唯一确定某个jar包:
groupId:属于组织的名称,类似Java的包名;
artifactId:该jar包自身的名称,类似Java的类名;
version:该jar包的版本。

在实际开发过程中,经常使用的命令有:
mvn clean:清理所有生成的class和jar;
mvn clean compile:先清理,再执行到compile;//编译
mvn clean test:先清理,再执行到test,因为执行test前必须执行compile,所以这里不必指定compile;
mvn clean package:先清理,再执行到package。//打包
lifecycle相当于Java的package,它包含一个或多个phase;
phase相当于Java的class,它包含一个或多个goal;
goal相当于class的method,它其实才是真正干活的。
通常情况,我们总是执行phase默认绑定的goal,因此不必指定goal。
常用插件
maven-shade-plugin:打包所有依赖包并生成可执行jar;
cobertura-maven-plugin:生成单元测试覆盖率报告;
findbugs-maven-plugin:对Java源码进行静态分析以找出潜在问题。
Maven支持模块化管理,可以把一个大项目拆成几个模块:
可以通过继承在parent的pom.xml统一定义重复配置;
可以通过modules编译多个模块。
设置本机存放资源的目录位置:
1.修改maven的配置文件,maven安装目录/conf/settings.xml
先备份
2.修改 localRepository指定你的目录(不要使用中文目录)
