maven超级pom

一、超级pom简介

在maven的发行版本中都会有一个超级pom,超级pom是所有maven项目的父pom,所有项目都继承这个超级pom,在超级pom中配置有:

  1. maven的构件和插件的中央仓库地址;
  2. 项目构建过程中用到的一些默认目录;
  3. 一个自带的profile;

二、超级pom路径

在maven本地仓库的如下位置:
org\apache\maven\maven-model-builder\3.0.4
打开该路径下的如下jar包:
maven-model-builder-3.0.4-sources.jar
在该jar包的如下路径下:
org\apache\maven\model\
可以找到超级pom:
pom-4.0.0.xml

三、超级pom内容

<?xml version="1.0" encoding="utf-8"?>

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->
<!-- START SNIPPET: superpom -->
<project> 
  <modelVersion>4.0.0</modelVersion>  
  <repositories> 
    <repository> 
      <id>central</id>  
      <name>Central Repository</name>  
      <url>http://repo.maven.apache.org/maven2</url>  
      <layout>default</layout>  
      <snapshots> 
        <enabled>false</enabled> 
      </snapshots> 
    </repository> 
  </repositories>  
  <pluginRepositories> 
    <pluginRepository> 
      <id>central</id>  
      <name>Central Repository</name>  
      <url>http://repo.maven.apache.org/maven2</url>  
      <layout>default</layout>  
      <snapshots> 
        <enabled>false</enabled> 
      </snapshots>  
      <releases> 
        <updatePolicy>never</updatePolicy> 
      </releases> 
    </pluginRepository> 
  </pluginRepositories>  
  <build> 
    <directory>${project.basedir}/target</directory>  
    <outputDirectory>${project.build.directory}/classes</outputDirectory>  
    <finalName>${project.artifactId}-${project.version}</finalName>  
    <testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory>  
    <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>  
    <scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>  
    <testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>  
    <resources> 
      <resource> 
        <directory>${project.basedir}/src/main/resources</directory> 
      </resource> 
    </resources>  
    <testResources> 
      <testResource> 
        <directory>${project.basedir}/src/test/resources</directory> 
      </testResource> 
    </testResources>  
    <pluginManagement> 
      <!-- NOTE: These plugins will be removed from future versions of the super POM -->  
      <!-- They are kept for the moment as they are very unlikely to conflict with lifecycle mappings (MNG-4453) -->  
      <plugins> 
        <plugin> 
          <artifactId>maven-antrun-plugin</artifactId>  
          <version>1.3</version> 
        </plugin>  
        <plugin> 
          <artifactId>maven-assembly-plugin</artifactId>  
          <version>2.2-beta-5</version> 
        </plugin>  
        <plugin> 
          <artifactId>maven-dependency-plugin</artifactId>  
          <version>2.1</version> 
        </plugin>  
        <plugin> 
          <artifactId>maven-release-plugin</artifactId>  
          <version>2.0</version> 
        </plugin> 
      </plugins> 
    </pluginManagement> 
  </build>  
  <reporting> 
    <outputDirectory>${project.build.directory}/site</outputDirectory> 
  </reporting>  
  <profiles> 
    <!-- NOTE: The release profile will be removed from future versions of the super POM -->  
    <profile> 
      <id>release-profile</id>  
      <activation> 
        <property> 
          <name>performRelease</name>  
          <value>true</value> 
        </property> 
      </activation>  
      <build> 
        <plugins> 
          <plugin> 
            <inherited>true</inherited>  
            <artifactId>maven-source-plugin</artifactId>  
            <executions> 
              <execution> 
                <id>attach-sources</id>  
                <goals> 
                  <goal>jar</goal> 
                </goals> 
              </execution> 
            </executions> 
          </plugin>  
          <plugin> 
            <inherited>true</inherited>  
            <artifactId>maven-javadoc-plugin</artifactId>  
            <executions> 
              <execution> 
                <id>attach-javadocs</id>  
                <goals> 
                  <goal>jar</goal> 
                </goals> 
              </execution> 
            </executions> 
          </plugin>  
          <plugin> 
            <inherited>true</inherited>  
            <artifactId>maven-deploy-plugin</artifactId>  
            <configuration> 
              <updateReleaseInfo>true</updateReleaseInfo> 
            </configuration> 
          </plugin> 
        </plugins> 
      </build> 
    </profile> 
  </profiles> 
</project>
<!-- END SNIPPET: superpom -->
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值