`
liyixing1
  • 浏览: 959178 次
  • 性别: Icon_minigender_1
  • 来自: 江西上饶
社区版块
存档分类
最新评论

pom.xml

阅读更多
每个maven文件都需要一个pom文件,作为项目的元数据和依赖配置等,
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>test</groupId>
  <artifactId>test1</artifactId>
  <version>test2</version>
  <packaging>jar</packaging>

  <name>test1</name>
  <url>http://maven.apache.org</url>
	<description>测试项目</description>
	<inceptionYear>2014</inceptionYear>
	<licenses>授权文件</licenses>
	<organization>liyixing</organization>
 <developers>...</developers>
 <contributors>...</contributors>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>



其中
groupId, artifactId, version三个基础属性是一个项目必须的。
另外还可能包括构建依赖信息,项目详细信息,如开发日期,人员等,还有环境包括一体化,邮件,版本库等。

构建包括,验证,编译,构建,测试,发布等环节
每个构建行为都有默认的三种生命周期,默认,干净,站点


所有的pom(项目对象模型)都从一个超级pom中继承
❶ 默认的超级POM定义了一个单独的远程Maven仓库,ID为central。这是所有
Maven客户端默认配置访问的中央Maven仓库。该配置可以通过一个自定义
的settings.xml文件来覆盖。注意这个默认的超级POM关闭了从中央Maven仓
库下载snapshot构件的功能。如果你需要使用一个snapshot仓库,你就要在
你的pom.xml或者settings.xml中自定义仓库设置。Settings和profile将会
在第 11 章构建Profile中和第 A.1 节 “简介”中的附录 A,附录: Settings
细节小节中具体介绍。
❷ 中央Maven仓库同时也包含Maven插件。默认的插件仓库就是这个中央仓
库。Snapshot被关闭了,而且更新策略被设置成了“从不”,这意味着Maven将永
远不会自动更新一个插件,即使新版本的插件发布了。
❸ build元素设置Maven标准目录布局中那些目录的默认值。
❹ 从Maven 2.0.9开始,超级POM为核心插件提供了默认版本。这么做是为那些没有
在它们POM中指定插件版本的用户提供一些稳定性。


继承
可以再pom中指定继承父pom,来减少配置
<project>
<parent>
<groupId>com.training.killerapp</groupId>
<artifactId>a-parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>project-a</artifactId>
...
</project>


或者指定继承的pom文件的路径
<project>
<parent>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>a-parent</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../a-parent/pom.xml</relativePath>
</parent>
<artifactId>project-a</artifactId>
</project>


以下是一个
Maven POM从它父POM中继承的项目列表:
• 定义符(groupId和artifactId中至少有一个必须被覆盖)
• 依赖
• 开发者和贡献者
• 插件列表
• 报告列表
• 插件执行 (id匹配的执行会被合并)
• 插件配置
分享到:
评论

相关推荐

    Maven pom.xml与settings.xml详解

    在Maven的世界里,`pom.xml`和`settings.xml`是两个至关重要的配置文件,它们共同决定了Maven项目的构建过程和环境配置。`pom.xml`(Project Object Model)文件是每个Maven项目的核心,它包含了项目的基本信息、...

    maven的本地仓库配置文件settings.xml和项目中文件pom.xml.zip

    一、Idea关联的maven本地仓库配置文件settings.xml (1)必须使用默认文件名 D:\developsoft\javaweb\commonPlugins\maven\apache-maven-3.8.1_first\conf\settings.xml ...pom-maven-spring-CusConfigV1不推荐使用.xml

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

    史上最全的Maven的Pom.xml文件详解 Maven是Java领域最流行的构建工具之一,其核心配置文件是Pom.xml。在Pom.xml文件中,我们可以定义项目的基本信息、依赖关系、构建过程、测试环境等。下面,我们将详细解析Pom.xml...

    根据pom.xml下载依赖

    当我们说“根据pom.xml下载依赖”,实际上是在指Maven如何通过解析项目中的pom.xml文件来获取并安装项目的依赖库。 pom.xml文件通常位于项目的根目录下,它定义了项目的基本属性,如项目名称、版本、打包类型(如...

    常用pom.xml文件.zip

    《深入解析Maven工程中的pom.xml配置》 在软件开发过程中,管理依赖关系是一项繁重的任务,而Apache Maven提供了一种优雅的方式来处理这个问题。本文将深入探讨Maven工程的核心配置文件——pom.xml,以及它在项目...

    通过mvn命令下载pom.xml中的jar包

    本文将详细介绍如何使用`mvn`命令下载`pom.xml`文件中声明的jar包,并解释涉及的相关概念。 首先,`pom.xml`是Maven项目对象模型(Project Object Model)的配置文件,它定义了项目的构建过程、依赖关系、项目信息...

    Maven build之pom.xml文件中的Build配置

    Maven通过一个叫做pom.xml的项目对象模型文件来配置项目构建的各个方面,其中标签是Maven构建配置的核心部分,它定义了整个构建生命周期中需要执行的指令和任务。 Maven构建包括编译代码、执行测试、打包以及部署等...

    Maven的pom.xml配置文件详细配置说明

    Maven的pom.xml配置文件详细配置说明 &lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=...

    maven项目pom.xml中parent标签的使用.docx

    "Maven 项目 pom.xml 中 parent 标签的使用" Maven 项目 pom.xml 文件中的 parent 标签是 Maven 项目管理依赖的核心组件之一。parent 标签的使用可以简化项目间的依赖管理,使得项目结构更加清晰、易于维护。 ...

    pom.xml android maven 工程

    pom.xml android maven 工程 如何拿Maven 构建 一个 Android 项目的pom配置

    idea中pom.xml文件

    idea中pom.xml文件

    pom.xml常用配置

    pom.xml常用配置 Pom.xml是Maven项目的核心配置文件,它定义了项目的结构、依赖关系和构建过程。下面是pom.xml文件中常用的配置项和解释: 1. `&lt;project&gt;`:pom.xml文件的根元素,定义了整个项目的信息。 2. `...

    基于Java的POM.XML

    基于Java的POM.XML,如果用兴趣,可以下载下去参考一下

    maven项目pom.xml最详细配置

    maven的pom.xml的最详细配置,内含pom的依赖、jdk配置等

    Maven之pom.xml配置文件详解.pdf

    本篇详解主要针对Maven中的核心配置文件——pom.xml进行深入解析,帮助理解和应用其配置。 首先,pom.xml是每个使用Maven的项目的必配文件,它位于项目的根目录下,用于定义项目的构建配置和其他信息。配置文件的...

    netty-all-4.1.5.Final完整pom.xml文件配置

    在标题"netty-all-4.1.5.Final完整pom.xml文件配置"中,我们关注的是Netty的特定版本——4.1.5.Final。这个版本包含了Netty的所有模块,提供了完整的功能集。`pom.xml`文件是Maven项目对象模型(Project Object ...

    netty-all-5.0.0.Alpha3 完整pom.xml配置

    这个“netty-all-5.0.0.Alpha3 完整pom.xml配置”是针对Netty 5.0.0 Alpha3版本的集成配置,包含了该版本所需的全部依赖项,便于开发者在基于Maven的项目中直接引用,避免了手动管理多个jar文件的繁琐过程。...

    maven私服(nexus)配置(setting,pom.xml)

    本文将详细介绍如何配置Maven以使用Nexus作为本地中央仓库,以及涉及的主要配置文件`settings.xml`和`pom.xml`。 **一、Nexus简介** Nexus是Sonatype公司提供的一款开源的Maven仓库管理器,它能够作为Maven的代理...

    Maven_pom.xml常用配置解析

    Maven pom.xml 常用配置解析 Maven 项目对象模型(POM)是 Maven 的核心概念,它是 Maven 项目的描述文件,用于定义项目的坐标、依赖关系、编译、打包、测试、部署等过程。pom.xml 文件是 Maven 项目的核心配置文件...

    pom.xml 文件

    pom.xml配置文件

Global site tag (gtag.js) - Google Analytics