maven pom.xml

Maven项目,依赖,构建配置,以及构件:所有这些都是要建模和表述的对象。这些对 
象通过一个名为项目对象模型(Project Object Model, POM)的XML文件描述。这个POM 
告诉Maven它正处理什么类型的项目,如何修改默认的行为来从源码生成输出。同样 
的方式,一个Java Web应用有一个 web.xml 文件来描述,配置,及自定义该应用,一个 
Maven项目则通过一个 pom.xml 文件定义。

POM包含了四类描述和配置: 
1、项目总体信息 
它包含了一个项目的而名称,项目的URL,发起组织,以及项目的开发者贡献者 
列表和许可证。

2、构建设置 
在这一部分,我们自定义Maven构建的默认行为。我们可以更改源码和测试代码 
的位置,可以添加新的插件,可以将插件目标绑定到生命周期,我们还可以自定 
义站点生成参数。

3、构建环境 
构建环境包含了一些能在不同使用环境中 激活的profile。例如,在开发过程 
中你可能会想要将应用部署到一个而开发服务器上,而在产品环境中你会需要将 
应用部署到产品服务器上。构建环境为特定的环境定制了构建设置,通常它还会 
由 ~/.m2 中的自定义 settings.xml 补充

4、POM关系 
一个项目很少孤立存在;它会依赖于其它项目,可能从父项目继承POM设置,它 
要定义自身的坐标,可能还会包含子模块

<code class="hljs r has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background: transparent;"><project xmlns=<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://maven.apache.org/POM/4.0.0"</span>
         xmlns:xsi=<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://www.w3.org/2001/XMLSchema-instance"</span>
         xsi:schemaLocation=<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"http://maven.apache.org/POM/4.0.0
            http://maven.apache.org/xsd/maven-4.0.0.xsd"</span>>
    <modelVersion><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4.0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">.0</span></modelVersion>

    <!-- 基本设置 -->
    <groupId><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></groupId>
    <artifactId><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></artifactId>
    <version><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></version>
    <packaging><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></packaging>
    <dependencies><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></dependencies>
    <parent><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></parent>
    <dependencyManagement><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></dependencyManagement>
    <modules><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></modules>
    <properties><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></properties>

    <!-- 构建过程的设置 -->
    <build><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></build>
    <reporting><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></reporting>

    <!-- 项目信息设置 -->
    <name><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></name>
    <description><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></description>
    <url><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></url>
    <inceptionYear><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></inceptionYear>
    <licenses><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></licenses>
    <organization><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></organization>
    <developers><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></developers>
    <contributors><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></contributors>

    <!-- 环境设置 -->
    <issueManagement><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></issueManagement>
    <ciManagement><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></ciManagement>
    <mailingLists><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></mailingLists>
    <scm><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></scm>
    <prerequisites><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></prerequisites>
    <repositories><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></repositories>
    <pluginRepositories><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></pluginRepositories>
    <distributionManagement><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></distributionManagement>
    <profiles><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">...</span></profiles>
</project></code>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值