Maven中的pom.xml解析

一 简介
Maven是基于项目对象模型(pom)的概念运作的,所以Maven的项目都有一个pom.xml用来管理项目的依赖以及项目编译等功能。
二 pom.xml文件解读

<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.0http://maven.apache.org/xsd/maven-4.0.0.xsd">;
  <!-- 指定了当前pom版本-->
  <modelVersion>4.0.0</modelVersion>
  <groupId>反向公司网址+项目名</groupId>
  <artifactId>项目名+模块</artifactId>
  <!-- 第一个0表示大版本号
  第二个0表示分支版本号
  第三个0表示小版本号
  0.0.1
  snapshot:快照
  alpha:内部公测
  beta:公测
  Release:稳定
  GA:正式
  -->
  <version>0.0.1-SNAPSHOT</version>
  <!--默认是jar
  war zip pom
  -->
  <packaging>jar</packaging>
  <!--项目描述名-->
  <name>hi</name>
  <!--项目地址-->
  <url>http://maven.apache.org</url>;
  <!--项目描述-->
  <description></description>
  <!--开发人员列表-->
  <develops></develops>
  <!--许可证信息-->
  <licenses></licenses>
  <!--组织信息-->
  <organization></organization>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!--
    变量定义:<properties></properties>中可定义变量,该变量在dependency被引用。
    -->
    <spring-framework.version>4.1.5.RELEASE</spring-framework.version>
  </properties>
  <!--依赖列表-->
  <dependencies>
    <!-- 
    groupId、artifactId、version为坐标
    groupId:组织内的唯一标识
    artifactId:项目的唯一标识
    version:项目的版本
    -->
    <!--依赖项-->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>${spring-framework.version}</version>
      <!--依赖范围-->
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <!--依赖范围-->
      <scope>test</scope>
      <!--设置依赖是否可选-->
      <optional></optional>
      <!--排除依赖传递列表-->
      <exclusions>
        <exclusion>
        </exclusion>
      </exclusions>
    </dependency>
  </dependencies>
  <!--依赖的管理-->
  <dependencyManagement>
   <dependencies>
    <dependency></dependency>
   </dependencies>
  </dependencyManagement>
  <!--用于定义构建信息-->
  <build>
    <!--插件的列表-->
      <plugins>
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-source-plugin</artifactId>
              <version>2.4</version>
              <executions>
                  <execution>
                      <phase>package</phase>
                      <goals>
                          <goal>jar-no-fork</goal>
                      </goals>
                  </execution>
              </executions>
          </plugin>
          <!--
          Maven提供了编译插件、可在编译插件中指定Java的编译级别
          -->
          <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-compiler-plugin</artifactId>
              <version>2.3.2</version>
              <configuration>
                <source>1.7</source>
                <target>1.7</target>
              </configuration>     
          </plugin>
      </plugins>
  </build>
  <parent></parent>
  <modules>
    <module></module>
  </modules>
</project>

三 运作方式

Maven会自动根据dependency中的依赖配置,直接通过互联网在Maven中心库下载相关依赖包到.m2目录下,.m2目录是本地的Maven库。

如果不清楚所依赖jar包的dependency怎么写,推荐到http://mvnrepository.com网站检索。

若Maven中心库中没有需要的jar包(如Oracle),需要通过下面的Maven命令将该jar包安装到本地Maven库后才能应用,如安装Oracle驱动到本地库:

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.2.0.2.0 -Dpackaging=jar -Dfile=E:\Java\韩顺平.2011版.hibernate3.3视频教程\资料\database_jar\oracle\ojdbc14.jar

四 说明

Maven运行时pom.xml是根据设置组合来运行的,每个Maven项目的pom.xml都有一个上级pom.xml,当前项目的pom.xml的设置都会被合并到上级pom.xml中。上级pom.xml定义了项目的大量的默认设置。如果用户希望看到Maven项目实际起作用的pom.xml,可以运行下面命令:

mvn help:effective-pom

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值