Maven学习笔记
2013-10-17 20:01
996 查看
1、 Maven是用来管理项目依赖的工具
2、 Maven的主配置文件是POM文件,要系统完整全面学习POM文件,可以查看XSD文件[http://maven.apache.org/xsd/maven-4.0.0.xsd],看完了这个我对POM文件中所有的标签和元素有了一个完整的了解
备注:看xsd文件的时候,最好采用某种IDE等工具,这样才能有层次地看这个文档,否则比较杂乱的感觉
3、 POM文件可以处理的参数有几部分:
内置的元参数:比如${basedir}
项目参数:比如${project.build.directory}
本地设置参数:比如${settings.localRepository}
本地系统的环境变量参数:比如${env.M2_HOME}
Java系统参数:比如${jdk_home}
父POM的变量:比如${project.parent.XXX}
自定义的参数:
<project>
<properties>
<my.filter.value>hello</my.filter.value>
</properties>
</project>
那么下次就可以用${my.filter.value}来引用hello这个值了
4、在编译一个pom项目时,我本来有几个方面的参数困惑
1)在有Profile的时候,它可以选择某个Profile的配置文件作为工作文件
2)在3中提到的参数,在编译完成之后的POM中,都被替换为实际的值
3)如果配置了Resource标签,并且允许进行参数替换,那么将Resource目录下的文件复制到target下时,会进行参数值替换
4)借用“properties-maven-plugin”等plugin,可以在pom中直接读取property文件的内容
用mvn help:effective-pom命令,可以查看最终生成的pom文件
5、POM有lifecycle,phase,goal的概念,lifecycle由phase组成,phase的具体功能由goal完成,goal来自于插件,一个phase可以绑定0到多个goal,goal也可以绑定到0或多个phase,一句话说, phase与goal的关系是多对多关系
用mvn phase goal的形式,可以手动进行maven命令的操作,比如
mvn clean dependency:copy-dependencies package
执行clean这个phase,然后dependency:copy-dependencies这个goal,最后再package这个phase
2、 Maven的主配置文件是POM文件,要系统完整全面学习POM文件,可以查看XSD文件[http://maven.apache.org/xsd/maven-4.0.0.xsd],看完了这个我对POM文件中所有的标签和元素有了一个完整的了解
备注:看xsd文件的时候,最好采用某种IDE等工具,这样才能有层次地看这个文档,否则比较杂乱的感觉
3、 POM文件可以处理的参数有几部分:
内置的元参数:比如${basedir}
项目参数:比如${project.build.directory}
本地设置参数:比如${settings.localRepository}
本地系统的环境变量参数:比如${env.M2_HOME}
Java系统参数:比如${jdk_home}
父POM的变量:比如${project.parent.XXX}
自定义的参数:
<project>
<properties>
<my.filter.value>hello</my.filter.value>
</properties>
</project>
那么下次就可以用${my.filter.value}来引用hello这个值了
4、在编译一个pom项目时,我本来有几个方面的参数困惑
1)在有Profile的时候,它可以选择某个Profile的配置文件作为工作文件
2)在3中提到的参数,在编译完成之后的POM中,都被替换为实际的值
3)如果配置了Resource标签,并且允许进行参数替换,那么将Resource目录下的文件复制到target下时,会进行参数值替换
4)借用“properties-maven-plugin”等plugin,可以在pom中直接读取property文件的内容
用mvn help:effective-pom命令,可以查看最终生成的pom文件
5、POM有lifecycle,phase,goal的概念,lifecycle由phase组成,phase的具体功能由goal完成,goal来自于插件,一个phase可以绑定0到多个goal,goal也可以绑定到0或多个phase,一句话说, phase与goal的关系是多对多关系
用mvn phase goal的形式,可以手动进行maven命令的操作,比如
mvn clean dependency:copy-dependencies package
执行clean这个phase,然后dependency:copy-dependencies这个goal,最后再package这个phase
相关文章推荐
- Maven学习笔记
- maven3学习笔记2--浅析maven目录结构
- Maven学习笔记
- Maven实战学习笔记2
- maven 学习笔记(二)-创建简单的eclipse+android+maven工程
- maven权威指南学习笔记(三)——一个简单的maven项目
- Maven学习笔记——运行HelloWorldTest并打包
- maven资源文件打包---学习笔记
- maven的学习笔记二、初识maven仓库配置文件
- Maven学习笔记---整合SSH框架
- Maven学习笔记一:Maven的安装配置
- [Spring入门学习笔记][maven]
- Maven学习笔记二:设置HTTP代理
- Better Builds With Maven 学习笔记(开始)
- Maven学习笔记二:Nexus私服搭建
- MAVEN学习笔记之Maven生命周期和插件简介(3)
- maven学习笔记
- Maven学习笔记---配置eclipse中maven环境
- 学习笔记之maven2学习总结(1,入门起步与实践) [ 光影人像 东海陈光剑 的博客 ]