父(Super)POM

简介: `父(Parent)POM`是Maven所有项目的默认起点,包含可继承的默认设置。它定义了如HTTP://repo1.maven.org/maven2这样的默认仓库。`effective pom`结合了Super POM和项目配置,简化开发者的XML配置。要查看Super POM配置,运行`mvn help:effective-pom`。在示例中,创建了一个项目,并执行此命令以显示处理后的effective-pom,Maven下载相关插件并成功完成任务。

父(Super)POM

父(Super)POM是 Maven 默认的 POM。所有的 POM 都继承自一个父 POM(无论是否显式定义了这个父 POM)。父 POM 包含了一些可以被继承的默认设置。因此,当 Maven 发现需要下载 POM 中的 依赖时,它会到 Super POM 中配置的默认仓库 http://repo1.maven.org/maven2 去下载。

Maven 使用 effective pom(Super pom 加上工程自己的配置)来执行相关的目标,它帮助开发者在 pom.xml 中做尽可能少的配置,当然这些配置可以被重写。

使用以下命令来查看 Super POM 默认配置:

mvn help:effective-pom
接下来我们创建目录 MVN/project,在该目录下创建 pom.xml,内容如下:

4.0.0

com.companyname.project-group project 1.0
在命令控制台,进入 MVN/project 目录,执行以下命令:
C:\MVN\project>mvn help:effective-pom
Maven 将会开始处理并显示 effective-pom。

[INFO] Scanning for projects...
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.5/maven-clean-plugin-2.5.pom
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:36 min
[INFO] Finished at: 2018-09-05T11:31:28+08:00
[INFO] Final Memory: 15M/149M
[INFO] ------------------------------------------------------------------------

相关文章
|
5月前
|
前端开发 Java 编译器
classpath中存在多个jar存在同限定名的class classloader会如何加载
总之,合理组织类路径和使用现代化的构建工具,可有效避免类加载冲突,保证应用的稳定运行。
168 8
|
6月前
|
Java Apache Maven
父(Super)POM
Maven的父(Parent)POM提供默认设置,所有POM隐含继承它。默认仓库是http://repo1.maven.org/maven2。`mvn help:effective-pom`展示合并后的配置。
|
8月前
|
Java Maven
maven子模块无法继承父模块的jar包解决方案
maven子模块无法继承父模块的jar包解决方案
|
JSON Java 数据格式
【SpringBoot】配置文件的加载与属性值的绑定
【SpringBoot】配置文件的加载与属性值的绑定
【SpringBoot】配置文件的加载与属性值的绑定
项目parent中pom文件
项目parent中pom文件
95 0
|
Java Apache Maven
创建父工程|学习笔记
快速学习创建父工程
100 0
创建父工程|学习笔记
|
Java Linux
springboot启动时报错 no main manifest attribute
今天在Linux上部署一个新的项目,突然出现这个错误,马上就是查问题,和之前的项目一比较发现是少了一个
460 0
|
XML Java Maven
maven父子工程遇到的bug,子module没有parent标签的解决几种方法
maven父子工程遇到的bug,子module没有parent标签的解决几种方法
732 0
maven父子工程遇到的bug,子module没有parent标签的解决几种方法
|
Java Maven
maven子工程引用父工程失败
当maven子工程引用父工程失败时,我们应该如何z做?本文带大家解决这个问题。
303 0
maven子工程引用父工程失败