什么是POM

POM stands for “Project Object Model”.It is an XML representation of a Maven project held in a file named pom.xml.

Maven Coordinates

groupId:artifactId:version是必须字段

groupId:artifactId:packaging:classifier:version可选

groupId:类似包名,例如:org.codehaus.mojo

artifactId:项目名称

packaging:打包方式,默认是jar。如果设置成war,就是用<packaging>war</packaging>

version:项目版本号

classifier:

项目关系(POM Relationships)

项目关系包括:依赖(传递依赖)、继承和组合

Dependencies

POM的基础是依赖表。

Exclusions

告诉maven,这个依赖不进行传递。也就是说这个是当前引用,不传递给上层项目。

Inheritance

The elements in the parent POM that are inherited by its children are:

  • dependencies
  • developers and contributors
  • plugin lists
  • reports lists
  • plugin executions with matching ids
  • plugin configuration

Aggregation (or Multi-Module)

<modules>
<module>my-project</module>
<module>another-project</module>
</modules>
属性(Properties)
访问方式:${X}
使用5中方式来访问:
1. 环境变量——env.X
例如:${env.PATH}访问环境变量中的PATH
2. project.x
pom文件中相关的值。例如<project><version>1.0</version></project> is accessible via ${project.version}.
3. settings.x
settings.xml文件中相关的值。例如:<settings><offline>false</offline></settings> is accessible via ${settings.offline}.
4. Java系统属性
${java.home}
5. x
POM中<properties />元素的值。例如<properties><someVar>value</someVar></properies>—>${someVar}
二、构建设置
build reporting
参考:
http://maven.apache.org/pom.html

Configuring the Jetty Maven Plugin

学习Maven POM的更多相关文章

  1. Maven学习(十二)-----Maven POM

    Maven POM POM代表项目对象模型.它是 Maven 中工作的基本单位,这是一个 XML 文件.它始终保存在该项目基本目录中的 pom.xml 文件.POM 包含的项目是使用 Maven 来构 ...

  2. 【maven学习】pom.xml文件详解

    环境 apache-maven-3.6.1 jdk 1.8 eclipse 4.7 POM是项目对象模型(Project Object Model)的简称,它是Maven项目中的文件,使用XML表示, ...

  3. 史上最全的maven pom.xml文件教程详解

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  4. myeclipse maven pom.xml 配置错误

    http://www.oschina.net/question/2265006_219341#tags_nav maven pom.xml 配置文件错误       腾讯云消息队列CMQ架构解析> ...

  5. scala maven pom文件

    老司机的spark maven pom文件 pom文件一: 4.0.0 <groupId>com.glsx</groupId> <artifactId>spark- ...

  6. 几个学习Maven不错的网址

    几个学习Maven不错的网址:---------------------------------------------------1.Maven官方网站 http://maven.apache.or ...

  7. maven pom 引入本地jar包

    maven pom 引入本地jar包 在pom.xml同级目录下新建lib文件夹,并放入本地jar包. 配置Jar包的dependency,包括groupId,artifactId,version三个 ...

  8. maven pom 属性介绍

    maven pom属性 内置属性(预定义,可直接使用) ${basedir} 表示项目根目录,即包含pom.xml文件的目录; ${version} 表示项目版本; ${project.basedir ...

  9. 在maven pom.xml中加载不同的properties ,如localhost 和 dev master等jdbc.properties 中的链接不一样

    [参考]:maven pom.xml加载不同properties配置[转] 首先 看看效果: 点开我们项目中的Maven projects 后,会发现右侧 我们profile有个可勾选选项.默认勾选l ...

随机推荐

  1. Css - 元素的显示模式

    Css - 元素的显示模式 块元素(block) 块元素是指: 1.独占一行,每个div上下之间没有留白,上面的div的底部与下面的div的顶部紧紧靠在一起没有任何缝隙 2.可设置宽高,默认宽度是父元 ...

  2. Javascript - ExtJs - Window组件

    1.所有组件都可以放入window,此时子组件不需要配置renderTo,只需要将它们作为window的items子项即可. 2.items子项必须先创建,最后创建window,否则子项不会显示. 3 ...

  3. 线程变量---ThreadLocal类

    用处:保存线程的独立变量.对一个线程类(继承自Thread) 思想:如果一个资源会引起线程竞争,那就为每一个线程配置一个资源.相比于synchronized是一种空间换时间的策略 当使用ThreadL ...

  4. 贝叶斯优化(Bayesian Optimization)深入理解

    目前在研究Automated Machine Learning,其中有一个子领域是实现网络超参数自动化搜索,而常见的搜索方法有Grid Search.Random Search以及贝叶斯优化搜索.前两 ...

  5. 【VMware vSphere】使用U盘给戴尔服务器安装ESXi6.0系统

    写在前面:          安装ESXi系统需要准备两个U盘,而且Raid已经做好          说明:          两个U盘,一个为启动盘(类似于大白菜),另一个作为安装系统使用(类似于 ...

  6. Shell-删除误解压的文件

    我意外在/var/www/html/,而不是/home/projects/www/current下解压了一个tarball.它搞乱了/var/www/html下的文件,你甚至不知道哪些是误解压出来的. ...

  7. 理解和使用ThreadLocal类

    一.从数据结构入手 下图为ThreadLocal的内部结构图 从上面的机构图,可以窥见ThreadLocal的核心机制: 每个Thread线程内部都有一个Map: Map里面存储线程本地对象(key) ...

  8. tomcat apr 部署

    背景 这还是为了高并发的事,网上说的天花乱坠的,加了apr怎么怎么好,我加了,扯淡.就是吹牛用.我还是认为,性能问题要考设计逻辑和代码解决,这些都是锦上添花的. 步骤 1 windows 部署简单,虽 ...

  9. linux下.bashrc文件 /PATH环境变量修改 /提示符修改

    1) .bashrc文件 在linux系统普通用户目录(cd /home/xxx)或root用户目录(cd /root)下,用指令ls -al可以看到4个隐藏文件, .bash_history   记 ...

  10. nginx或者squid正向代理实现受限网站的访问

    项目背景:公司商务同事需要操作合作方的后台,但是这个后台做了限制(安全考虑只对指定IP放行),刚好公司是adsl拨号,经常更换IP 需求:让商务同事不要经常给IP到合作方去添加白名单 于是想到了做正向 ...