1 maven pom.xml只是配置文件

构建的流程已经固化在maven中了,pom.xml只是对这个流程的配置。特别是插件,在不进行人工绑定的情况下,插件是对应固定的生命周期的,我们操作的时候是操作的生命周期,这个时候相应的插件就会被调用,那么为什么还要对插件进行配置呢?这是因为我们希望插件在这里有自己特有的行为,这个时候我们会对它进行单独的配置。否则,不需要显示的在pom中指定插件。另外,也可以将插件绑定生命周期。

 

2 聚合

packaging为pom,其它模块默认的packaging为jar。

聚合的目的是为了提供构建的统一入口,它本身无实质内容。

 

3 继承

parent的话,会让子模块继承很多东西,比如properties,dependency,plugin等等。但是,dependencyManagement和pluginManagement是不会继承实际的内容的,只是会继承parent的配置,自己还是需要声明一下。用它们的好处是所有的子模块都有一个相同的配置,这样不会乱,不会导致不一致。

 

4 maven parent.relativePath

如果是一个空值,则始终从中央仓库中获取。