父(Super)POM

简介: 父(Super)POM是Maven所有POM的默认基础,包含可继承的默认设置,如从http://repo1.maven.org/maven2下载依赖。`mvn help:effective-pom`命令显示默认配置。创建POM示例展示如何定义`modelVersion`, `groupId`, `artifactId`和`version`。在命令行运行此命令会显示处理后的effective-pom,展示实际配置。

父(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,内容如下:

<!-- 模型版本 -->
<modelVersion>4.0.0</modelVersion>
<!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成, 如com.companyname.project-group,maven会将该项目打成的jar包放本地路径:/com/companyname/project-group -->
<groupId>com.companyname.project-group</groupId>

<!-- 项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 -->
<artifactId>project</artifactId>

<!-- 版本号 -->
<version>1.0</version>


在命令控制台,进入 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 Apache Maven
父(Super)POM
Maven的父(Parent)POM提供默认设置,所有POM隐含继承它。默认仓库是http://repo1.maven.org/maven2。`mvn help:effective-pom`展示合并后的配置。
|
5月前
|
Java Maven
@Date不管用怎么办,想少写get和setter方法,reate方法创建不了怎么办,Cannot resolve method ‘setxxx‘ in ‘xxx‘不管用怎么办,到Maven创建插件
@Date不管用怎么办,想少写get和setter方法,reate方法创建不了怎么办,Cannot resolve method ‘setxxx‘ in ‘xxx‘不管用怎么办,到Maven创建插件
|
7月前
|
Java Maven
maven子模块无法继承父模块的jar包解决方案
maven子模块无法继承父模块的jar包解决方案
项目parent中pom文件
项目parent中pom文件
89 0
|
Java Apache Maven
创建父工程|学习笔记
快速学习创建父工程
创建父工程|学习笔记
Child module pom.xml of pom.xml does not exist @
Child module pom.xml of pom.xml does not exist @
166 0
|
XML 开发工具 Android开发
ViewGroup是如何获取到xml中child设置的对应的属性的?
ViewGroup是如何获取到xml中child设置的对应的属性的?
父 beforeCreate -> 父 created -> 父 beforeMount -> 子 beforeCreate -> 子 created -> 子 beforeMount -> 子 mounted -> 父 mounted
父 beforeCreate -> 父 created -> 父 beforeMount -> 子 beforeCreate -> 子 created -> 子 beforeMount -> 子 mounted -> 父 mounted
|
XML Java Maven
maven父子工程遇到的bug,子module没有parent标签的解决几种方法
maven父子工程遇到的bug,子module没有parent标签的解决几种方法
711 0
maven父子工程遇到的bug,子module没有parent标签的解决几种方法