1. clean:清理,在进行真正构建之前进行一些清理的工作,移除所有上一次构建生生的文件。执行该命令会删除项目路径下的target文件。但是不会删除本地的maven仓库已经生成的jar文件。
2. validate:验证,验证工程是否正确,所需的信息是否完整。
3. compile:编译源码,编译生成class文件,编译命令,只编译选定的目标,不管之前是否已经编译过,会在项目路径下生成一个target目录,在该目录中包含一个class目录,里面全是生成的class文件及字节码文件。
4. package:打包,将工程文件打包为指定的格式,例如jar、war等。这个命令会在项目路径下生成一个target目录,并且拥有compile命令的功能进行编译,同会在target目录下生成项目的jar/war文件。如果a项目依赖于b项目,打包b项目时,只会打包到b项目下的target目录下,编译a项目时就会报错,因为找不到所依赖的b项目,说明a项目在本地仓库是没有找到它所依赖的b项目,这就需要install命令了。
5. verify:核实,检查package是否有效,符合标准。
6. install:安装至本地仓库,将包安装到本地仓库,让其他项目依赖。该命令包含了package命令的功能,不但会在项目路径下生成class文件和jar包,同时会在本地maven仓库生成jar文件,以供其他项目使用(如果没有设置过maven项目,一般在用户./m2目录下。如果a项目依赖于b项目,那么install b项目,会在本地仓库同时生成pom文件和jar文件,解决了package出错的问题。)
7. build:功能类似compile,只是只能对整个项目进行编译。
8. site:站点,生成项目的站点文档。
9. deploy:``复制到远程仓库。