Maven学习

参考链接:maven教程   书籍《Maven实战》

 

maven是什么

maven是一个项目管理工具,基于pom.xml的配置,通过一小段描述信息来管理项目的构建、报告和文档等的一个软件项目管理工具。maven可以管理项目的整个周期,包括清除、编译、测试、报告、打包、部署等。

maven生命周期

  • clean 清理项目,包含(前)pre-clean、(中)clean、(后)post-clean;
  • defaulit 是三个生命周期中最核心的部分,包含了项目构建时所需要执行的所有步骤,包括编译、测试、执行、打包等;
  • site 生成和发布 maven 站点,文档和统计数据可以自动生成,是maven很好用的功能。

maven clean install -Dmaven.test.skip=true命令解析

  • 该命令结合了两个生命周期,clean和default。clean执行pre-clean和clean,不执行post-clean;install执行default周期的install之前的所有步骤
  • -D参数为命令行插件配置的写法,后面跟一个参数键=参数值的形式来配置插件目标参数,-Dmaven.test.skip参数为true表示跳过执行测试

maven插件和生命周期的关系

聚合和继承

  • 聚合:聚合其他几个模块为一个大的模块
  • 继承pom:为了消除每个模块重复的pom配置
  • 实际项目中,往往发现一个pom既是聚合pom又是父pom,如下图server既是controller模块和其他模块的聚合pom(见<modules>标签),又是这几个模块的父pom(见<parent>标签),且server又是-starter-parent的子项目
  • 注意:聚合/继承pom,其中<packaging>标签都必须为pom,且聚合/继承模块除了pom之外都没有实际的内容

Maven学习Maven学习

Nexus私服

maven私服的一种,稍有规模地使用maven时,可以用Nexus架设私服。