ylbtech-Java-Maven:POM百科

Maven是以项目为中心的设计。POM(project object model)是Maven对一个单一项目的描述。没有POM的话,Maven是毫无用处的——POM是Maven的核心。是POM实现的并驱动了这种以模型来描述的构建方式。

1.返回顶部
1、

POM示例

下面的POM示例,是可能用于构建和测试一个项目的脚本。一个POM是一个XML文档,看起来类似于如下的示例:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
POM脚本允许编译、测试以及生成基本的文档。你可能会问单凭这区区15行代码是如何做到的,实际上这是一个十分好且基本的问题。答案在于Maven对于其Super POM(译者注:意即所有POM脚本的父脚本)的隐匿调用。
 

规则

MavenPOM文档带有全部的Maven所鼓励的默认规则,这类似于Java语言java.lang.Object对象。
Java里,所有对象都是java.lang.Object的子对象,同样的,在Maven中,所有POM也都是一个Super POM的子脚本。这个Super POM乍一看可能让你觉得恐怖,要记住的最关键一点是,Super POM包含了重要信息,因此你不必在创建一个POM的时候重复这些信息。
 

包含元素

一个POM包含了关于你的项目的所有重要信息。之前提供的POM示例,非常简单,但仍然显示出了一个POM所包含的一些关键元素。
project:这是所有pom文件中的最顶级元素,一级根元素
modelVersion:此必需的元素说明了本POM所使用的模型版本。模型本身的版本很少改变,虽然如此,但它仍然是必不可少的,以当Maven引入了新的特性或者其他模型变更的时候,确保稳定性。
groupId:本元素表示创建本项目的组织的唯一标识。groupId是一个项目的核心关键标识之一,它基于组织的完整属性域名。
artifactId:表示本项目的主要项目的唯一基本名。一个典型的由Maven生成的项目名称将会是如下的格式:<artifactId>-<version>.<extension>;,其他部分诸如源包也使用artifactId作为它们名称的一部分。
packaging:表示本项目所使用的包类型JAR,WAR,EAR等)。这不仅仅意味着将使用JAR,、WAR、EAR打包,也表明在作为构建流程一部分的,一个特定的生命周期。此生命周期是一个主题处理,会在本章的稍后提到。只要记住此选定的项目包扮演的是定制构建生命周期的角色。本元素的默认值是jar,因此在大多数情况下,你不需要去特别指定。
version:表示项目的版本Maven对于你的版本管理大有帮助,你会经常看到一个版本的SNAPSHOT快照),指示项目在开发中的不同状态。
name:项目的显示名称,常用于Maven生成的文档当中,并在构建过程中,为你的项目或其他的项目作为一种依赖使用。
url:项目的网站网址
description:项目的介绍
2、
2.返回顶部
 
3.返回顶部
 
4.返回顶部
 
5.返回顶部
1、
2、
 
6.返回顶部
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

Java-Maven:POM百科的更多相关文章

  1. java & maven pom

    java & maven pom https://maven.apache.org/pom.html http://www.tutorialspoint.com/maven/maven_pom ...

  2. CentOS 6 编译 TensorFlow for Java 以及 Maven Pom

    我们的系统环境 CentOS 6.5, JDK 1.8 更新yum源 $ yum update 安装 Python 2.7 $ yum install python27 python27-numpy ...

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

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

  4. Java maven安装GDAL

    1. 使用编译好的安装jdal http://www.gisinternals.com/release.phpgdal-111-1800-x64-core.msi下载地址:http://downloa ...

  5. myeclipse maven pom.xml 配置错误

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

  6. scala maven pom文件

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

  7. Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例【附详细代码】

    http://blog.csdn.net/xiefu5hh/article/details/51707529 Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例[附 ...

  8. maven pom 属性介绍

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

  9. java + maven 实现发送短信验证码功能

    如何使用java + maven的项目环境发送短信验证码,本文使用的是榛子云短信 的接口. 1. 安装sdk 下载地址: http://smsow.zhenzikj.com/doc/sdk.html ...

随机推荐

  1. bootstrap表格样式

    一:表格基本格式 <table> <tr> <th>标题一</th> <th>标题二</th> </tr> < ...

  2. php数据库增删改查

    首先建立一个数据库db_0808,将db_0808中表格student导入网页. CURD.php <!DOCTYPE html> <html lang="en" ...

  3. SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0)。在文件 'D:\Program Files\Microsoft SQL Ser

    SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0).在文件 'D:\Program Files\Microsoft SQL Ser ...

  4. Deutsch lernen (08)

    1. empfehlen - empfahl - hat empfohlen  推荐:劝说,劝告 Können Sie mir einen guten Artz empfehlen? jemand e ...

  5. PCL的学习必要性、重要性、意义及最初——持续修改中

    为什么学习PCL:图像描述:各种维度图像的逻辑描述形式  ^-^ 且点云库是机器人学领域的必备基础库,ICRA和IROS的计算机视觉相关一般都使用了PCL库,PCL库也成为ROS的基础部分,与机器人操 ...

  6. 【sqli-labs】 less6 GET - Double Injection - Double Quotes - String (双注入GET双引号字符型注入)

    同less5 单引号改成双引号就行 http://localhost/sqli/Less-6/?id=a" union select 1,count(*),concat((select ta ...

  7. 在jboss上部署web应用

    1.JBoss介绍 JBoss完全实现了J2EE的服务栈: EJB (Enterprise JavaBeans) JMS (Java Message Service) JTS/JTA (Java Tr ...

  8. php第五节课

    封装 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.o ...

  9. 国庆day2

    a[问题描述]你是能看到第一题的 friends呢.—— hja世界上没有什么比卖的这 贵弹丸三还令人绝望事了,所以便么一道题.定义

  10. 洛谷 P1059 明明的随机数

    题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了NNN个111到100010001000之间的随机整数(N≤100)(N≤100)(N≤100),对于其中重复 ...