什么是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. 嵌入式开发平台迅为iTOP-4412开发板-ssh常见问题以及解决方法

    一.基本网络,软件安装以及配置 ssh 软件无法登陆 Ubuntu,有可能是网络不通.SSH 软件未安装.环境变量没配置.防 火墙未关闭等. 1. 网络连接 使用 ssh 传输文件的前提是网络顺畅,即 ...

  2. Django实战(一)-----用户登录与注册系统2(数据模型、admin后台、路由视图)

    使用Django开发Web应用的过程中,很多人都是急急忙忙地写视图,写前端页面,把最根本的模型设计给忽略了. 模型中定义了数据如何在数据库内保存,再直白点说就是数据表的定义.这部分工作体现在Djang ...

  3. 第二节,mnist手写字体识别

    1.获取mnist数据集,得到正确的数据格式 mnist = input_data.read_data_sets('MNIST_data',one_hot=True) 2.定义网络大小:图片的大小是2 ...

  4. Codeforces 408D Long Path (DP)

    题目: One day, little Vasya found himself in a maze consisting of (n + 1) rooms, numbered from 1 to (n ...

  5. GPU Tips

    <1> Basic #include <stdio.h> #include <cuda_runtime.h> #include <device_launch_ ...

  6. 【转】Python之mmap内存映射模块(大文本处理)说明

    [转]Python之mmap内存映射模块(大文本处理)说明 背景: 通常在UNIX下面处理文本文件的方法是sed.awk等shell命令,对于处理大文件受CPU,IO等因素影响,对服务器也有一定的压力 ...

  7. Shell-find . -type f -name "*.jpg" -print | xargs tar -czvf images.tar.gz

    查找所有的 jpg 文件,并且压缩它们: find . -type f -name "*.jpg" -print | xargs tar -czvf images.tar.gz

  8. 题解-洛谷4921&4931 情侣?给我烧了!(加不加强无所谓版)

    Problem 简单版 & 加强版 题目概要(其实题面写得很清楚,这里搬运一下): \(n\) 对情侣排座位,恰有 \(n\) 排座位,每排 \(2\) 个座位,在一个就座方案中所有人会将将座 ...

  9. 用户 'IIS APPPOOL\xxxx' 登录失败

    一.现象发布到iis后,网站出现以下提示异常详细信息: System.Data.SqlClient.SqlException: 用户 'IIS APPPOOL\IdealTest' 登录失败. 二.分 ...

  10. JS实现多语言方式

    应用场景: 在不同移动平台(IOS,Android)上,建立一套与HTML页面通讯框架:主要业务逻辑使用HTML开发:想支持多语言开发. 动机: 通过主动发消息的方式,在页面完成初始化前,获取当前语言 ...