Maven 学习笔记-maven属性
Maven有六类属性:
1)内置属性
主要有两个常用内置属性
${basedir}:表示项目根目录,即包含pom.xml文件的目录;
${version}:表示项目版本;
2)POM属性
${M2_HOME}/lib/maven-model-builder-3.2.3.jar/org/apache/maven/model/pom-4.0.0.xml
.....
1 <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>${project.basedir}/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.8</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.3.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
....
用户可以使用该属性引用POM文件中对应元素的值。常用的POM属性包括
${project.build.sourceDirectory}:项目的主源码目录,默认为src/main/java
${project.build.testSourceDirectory}:项目的测试源码目录,默认为src/test/java
${project.build.directory}:项目构建输出目录,默认为target/
${project.outputDirectory}:项目主代码编译输出目录,默认为target/
${project.testOutputDirectory}:项目测试代码编译输出目录,默认为target/test-classes/
${project.groupId}:项目的groupId
${project.artifactId}:项目的artifactId
${project.version}:项目的version,与${version}等价
${project.build.finalName}:项目打包输出文件的名称,默认为${project.artifactId}-${project.version}
3)自定义属性
用户可以在POM的<properties>元素下自定义Maven属性,例如:
<properties>
<junit.version>4.8</junit.version>
<dubbo.version>2.5.3</dubbo.version>
<freemarker.version>2.3.19</freemarker.version>
<edi-un.version>0.0.1</edi-un.version>
<edi-framework.version>4.0.1</edi-framework.version>
<!-- alibaba druid -->
<druid.version>0.2.20</druid.version>
<dubbo.version>2.5.3</dubbo.version>
<zkclient.version>0.10</zkclient.version>
<!-- 缓存 -->
<jedis.version>2.2.0</jedis.version> <freemarker.version>2.3.19</freemarker.version> <!-- spring hibernate jpa begin -->
<hibernate.version>4.2.11.Final</hibernate.version>
<hibernate-validator.version>4.2.0.Final</hibernate-validator.version>
<hibernate-commons-annotations>4.0.2.Final</hibernate-commons-annotations>
<hibernate-jpa-2.0-api>1.0.1.Final</hibernate-jpa-2.0-api>
<spring.version>3.1.1.RELEASE</spring.version>
<persistence.version>1.0</persistence.version>
<javassist.version>3.12.0.GA</javassist.version>
</properties>
4)Settings属性
与POM属性同理,用户使用以setting.开头的属性引用settings.xml文件中XML元素的值,如常用的${settings.localRespository}指定用户本地仓库的地址
5)Java系统属性
所有Java系统属性都可以使用Maven属性引用,例如${user.home}指向了用户目录。用户可以使用mvn help:system查看所有的Java系统属性
6)环境变量属性
所有环境变量都可以使用以env.开头的Maven属性引用。例如${env.JAVA_HOME}指代了JAVA_HOME环境变量的值。用户可以使用mvn help:system查看所有的环境变量
Maven 学习笔记-maven属性的更多相关文章
- Maven 学习笔记——Maven环境配置(1)
在学习Selenium的过程中,接触到了Maven(项目管理工具),不至于学一路忘一路,左耳朵进右耳多出,还是决定边学边记录,毕竟听的不如 看的,看的不如写的吗.首先学一样东西,肯定得明确学的是什么, ...
- MAVEN学习笔记-maven的获取和安装
windows下maven的安装步骤: 1.下载压缩包http://maven.apache.org/download.cgi选择apache-maven-3.3.9-bin.zip下载 ...
- maven学习笔记--maven项目创建
使用Maven命令和Eclipse的Maven插件,创建Maven项目 (1)maven命令生成项目 新建一个文件目录,dos进入该目录并执行下面命令: mvn archetype:c ...
- Maven 学习笔记——Maven和Eclipse(2)
前面已经配置好Maven的环境和本地仓库已经准备好了,下面我们通过Eclipse创建Maven项目. 1.安装Maven集成于Eclipse IDE (Eclipse的版本中如果已经集成了Maven插 ...
- Maven学习笔记-03-Eclipse下maven项目在Tomcat7和Jetty6中部署调试
现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...
- Maven学习笔记-04-Eclipse下maven项目在Tomcat7和Jetty6中部署调试
现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...
- Maven学习笔记—仓库
Maven仓库 1 什么是Maven仓库 在Maven中,任何一个依赖.插件或者项目构建的输出,都可以成为构件,而Maven通常在某个位置统一的存储所有Maven项目共享的构件,这个统一的位置就是Ma ...
- MAVEN学习笔记之Maven插件的应用(4)
MAVEN学习笔记之Maven插件的应用(4) <build> <pluginManagement> <plugins> <plugin> <gr ...
- MAVEN学习笔记之Maven生命周期和插件简介(3)
MAVEN学习笔记之Maven生命周期和插件简介(3) clean compile site三套生命周期相互独立. clean pre-clean 执行清理前的工作 clean 清理上一次构建生成的所 ...
随机推荐
- impala
impala 1.impala是什么: impala是基于hive的大数据实时分析查询引擎,直接使用Hive的元数据库Metadata,意味着impala元数据都存储在Hive的metastore中. ...
- Aspnet Mvc 前后端分离项目手记(三)关于restful 风格Url设计
RESTful 不是新东西,简单理解它的核心思想就是最大程度的利用http协议的一些特点,比如uri,比如请求动词,在前后端分离的项目中会有大大的好处 ,好的设计的url简单明了,胜过详细的说明文档. ...
- IO操作、PIL使用、Django的admin操作
操作内存的流-StringIO | BytesIO from io import StringIO, BytesIO #创建操作字符串的内存流 sf = StringsIO() #往内存中写 sf.w ...
- Python中re的match、search、findall、finditer区别
原文地址: http://blog.csdn.net/djskl/article/details/44357389 这四个方法是从某个字符串中寻找特定子串或判断某个字符串是否符合某个模式的常用方法. ...
- 2019-2-25SqlServer 中所有表、列、视图、索引、主键、外键等常用sql
sp_help Accounts_Users 其中Accounts_Users 表示表名 sp_columns Accounts_Users exec sp_helpconstraint ...
- 关于UTF-8和GBK编码的转换
$oldname=mb_convert_encoding($_POST['oldname'], "GBK" , "UTF-8");//将变量转码为GBK,已知原 ...
- Installation of CarbonData 1.1.0 with Spark 1.6.2
关键词:carbondata spark thrift 数据仓库 [Install thrift 0.9.3] 注意 要装thrift-java必须先装ant . 有人说要装boost,我在cento ...
- CSS3_文本样式
1. 文字阴影 text-shadow 使用: text-shadow: 水平方向偏移量 垂直方向偏移量 模糊程度 颜色; #box { text-shadow: 10px 1 ...
- [Luogu P1495]曹冲养猪
题目链接 中国剩余定理(孙子定理)的裸题.直接放代码. #include<iostream> #include<cstdio> #include<algorithm> ...
- Multi-Projector Based Display Code ------- Home
Overview This project provides you with the tools and techniques you need to create your own large-a ...