maven文件解析

  • 0级标签:声明,声明这些就不讲了,基本都是一样的
  • 1级标签:主要用来声明项目打包的,包含modelVersionartifactId等标签(类似于引入时候的那些)
  • 1级标签properties:下面可包含子标签,设置本项目的属性,主要用于设置版本参数,比如引入jar包版本,jdk版本
  • 1级标签modules,包含子标签module,说明本项目包含模块
  • 【maven文件解析】1级标签dependencies,这个是pom核心了,引入需要使用的jar包,如果pom包含了parent标签可以不指定版本,直接使用父项目依赖的常用版本。
      1. 二级标签exclusions,因为依赖jar包的时候,有可能jar又依赖其他jar包,默认情况是会直接把二级依赖jar包也引入进来,很容易造成jar包冲突,jar包不兼容的问题,解决方案有直接添加引入二级依赖用来覆盖,或者直接用exclusions标签排外,这样这个二级依赖就不会引入,但需要注意的是,这时候排外了,而项目又没有引入jar包相当于缺少依赖了。
  • 1级标签dependencyManagement,这个被坑了一次,没有别的作用,仅仅是给子项目or子模块做一个jar包版本管理,包括scope跟version
  • 1级标签build,包含项目打包的设置
    • 2级标签resources,包含配置文件,可以动态的指定配置文件${profile.dir}
    • 二级标签plugins,编译插件
    • 2级标签pluginManagement,指定打包的各个maven插件参数,比如输出路径跟版本
  • 1级标签profiles,指定动态配置文件
  • 1级标签distributionManagement,这个是用来分发构件到远程,大概就是把编译好的软件发到远程地址的意思

    推荐阅读