码迷,mamicode.com
首页 > 其他好文 > 详细

Maven Pom的一些知识

时间:2015-07-30 19:11:49      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:

大部分整(fan)理(yi)自Maven官方网站的DOC Introduction to POM https://maven.apache.org/guides/introduction/introduction-to-the-pom.html

POM( Project Obeject Model )是一个Maven工程中最基本的组件单元,

1. 项目变量/POM中的变量;

  所有只有单一值的元素都可以作为变量来使用。 ${project.build.sourceDirectory}, ${project.groupId},${project.version},变量的前缀都是project,如果这些变量前缀为pom或者压根没前缀,不要使用它,因为这种形式已经被标注为过时了(@deprecated)

  特殊变量(Special Variables)

  ${project.basedir}  当前工程所在目录

  ${project.baseUri}  当前工程所在目录,以URI形式展示,Maven 2.1.0之后可用

  ${maven.build.timestamp}  timestamp表示build开始时刻,Maven 2.1.0-M 之后可用

  ${maven.build.timestamp}时间戳可以被解释为特定的时间日期格式,但是要再项目<project>块中声明`maven.build.timestamp.format`属性。代码如下:

1 <project>
2   ...
3   <properties>
4     <maven.build.timestamp.format>yyyy-MM-dd‘T‘HH:mm:ss‘Z‘</maven.build.timestamp.format>
5   </properties>
6   ...
7 </project>

  `maven.build.timestamp.format`的指定格式,与 `java.text.SimpleDateFormat`中的格式一致。如果`maven.build.timestamp.format`没有被指定,那么默认的时间日期格式就是上面所示代码的格式。

  也可以将工程中所定义的属性(properties)作为一个变量使用。官网doc给出的示例,就是将 <properties>定义的`mavenVersion`作为变量使用。

 1 <project>
 2   ...
 3   <properties>
 4     <mavenVersion>2.1</mavenVersion>
 5   </properties>
 6   <dependencies>
 7     <dependency>
 8       <groupId>org.apache.maven</groupId>
 9       <artifactId>maven-artifact</artifactId>
10       <version>${mavenVersion}</version>
11     </dependency>
12     <dependency>
13       <groupId>org.apache.maven</groupId>
14       <artifactId>maven-project</artifactId>
15       <version>${mavenVersion}</version>
16     </dependency>
17   </dependencies>
18   ...
19 </project>

2. 项目继承 Project Inheritance的概念,与示例;

3. 项目继承 Project Aggregation的概念,与示例;

 

Maven Pom的一些知识

标签:

原文地址:http://www.cnblogs.com/nomorewzx/p/4690108.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!