Maven的做用:项目构建,依赖管理。
文章借鉴了菜鸟教程Maven相关的内容,连接为 Maven教程。
包含4个部分:html
cleanjava
清除上次构建生成的文件shell
pre-clean
:执行清理前须要完成的工做clean
:清理上一次构建生成的文件post-clean
:执行清理后须要完成的工做default服务器
构建项目,重要的phase以下:网络
validate
:验证工程是否正确,全部须要的资源是否可用。compile
:编译项目的源代码。test
:使用合适的单元测试框架来测试已编译的源代码。这些测试不须要已打包和布署。package
:把已编译的代码打包成可发布的格式,好比jar。integration-test
:若有须要,将包处理和发布到一个可以进行集成测试的环境。verify
:运行全部检查,验证包是否有效且达到质量标准。install
:把包安装到maven本地仓库,能够被其余工程做为依赖来使用。deploy
:在集成或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其余的开发者或者工程能够共享。site框架
创建和发布项目站点maven
post-site
:生成项目站点以后须要完成的工做site-deploy
:将项目站点发布到服务器仓库:项目所依赖的第三方库存放的位置
搜索顺序:本地-->远程-->中央post
Maven 使用原型 archetype
插件建立自定义的项目结构,造成Maven项目模板。原型即为一个项目模板,例如要建立一个简单的helloworld项目,则执行mvn命令使用DarchetypeArtifactId=maven-archetype-quickstart
参数,建立原型为maven-archetype-quickstart
的项目。单元测试
mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart //项目原型 -DinteractiveMode=false //是否交互模式,区别于批处理模式
直接在pom.xml
中添加依赖的参数。测试
Maven拥有对依赖的传递机制,例如B依赖于A,C依赖于B,则C依赖A,maven会管理这种依赖传递的关系。
一般在项目的开发的过程当中,部署包括如下步骤:
maven-release-plugin
插件能够实现自动部署,部分参数以下:
scm
配置SVN的路径,Maven将从该路径下将代码取下来。repository
构建的WAR或EAR或JAR文件的位置,或者其余源码构建成功后生成的构件的存储位置。plugin
配置maven-release-plugin
插件来实现自动部署过程。resources
:用于排除或包含某些资源文件<dependencies>
、<dependency>
标签;<parent>
标签,子pom文件能继承父pom的依赖;<modules>
标签,将多个maven的项目聚合为一个大的项目。Maven的属性是值得占位符,如${X}
,可用于pom文件任何赋值的位置。