maven2学习指南
最近时而间断学习maven2,由于公司项目一直未使用它作为项目管理工具,在实战方面有很多欠缺。
根据翻阅的资料以及相关权威文档学习,对maven的应用有个简单的了解,如果让我花很多的时间
再写一遍出来,那样是太浪费时间了。倒不说一些maven的学习指要更为好些,爱好者们可以根据这些指要
去google,学习的效率也许会更高。
1 约定规则
相比以前的SRC目录存放项目源文件 而maven 则改为src/main/java目录下面
当然还有其他的test,resource,class等目录,在maven种都有一个约定的标准目录
具体可以google
以下是收索的部分资料,仅供参考
目录src/main/java java源码目录
目录src/main/resources 资源文件目录
目录src/test/java 测试java源码目录
目录src/test/resources 测试资源文件目录
目录target 打包输出目录
目录target/classes 编译输出目录
目录target/test-classes 测试编译输出目录
目录target/site 项目site输出目录
目录src/main/webapp web应用文件目录(当打包为war时),如WEB-INF/web.xml
jar 默认打包格式
*Test.java Maven只会自动运行符合该命名规则的测试类
%user_home%/.m2 Maven默认的本地仓库目录位置
中央仓库 Maven默认使用远程中央仓库:http://repo1.maven.org/maven2
1.3 Maven Compiler插件默认以1.3编译,因此需要额外配置支持1.5
2 POM(项目对象模型)文件
是 maven 管理项目的一个标准配置文件,在该文件中对项目进行定义,大致包含四类信息:
项目总体信息(包含gruopId,artitactId,version,Multl-Module,Inhenitance,Dependencies等元素属性值)
主要是指项目的名称,url,发起组织,开发者等信息
构建设置(包含directories,extensions,resources,plugins,reporting等元素属性值)
自定义Maven构建的默认行为
构建环境(包含Environmentinformation maven Environment profiles等信息)
包含了一些能在不同使用环境中激活的ptofile
POM依赖关系
主要指不同项目的POM之间的依赖设置,管理好不同项目之间的依赖也是maven应用的主要目的。
查阅google或maven权威指南,里面会有对文件的每一元素及其所起的作用做详细的解释。
一旦对POM文件详细了解后,相信对Maven2应用将是一个简单的事情
需要提醒的是,maven有一个默认的超级POM,所有的POM都共享这个超级POM里面的设置,它位于${maven_home}/lib的
jar文件中,org.apache.maven.project的包下,一些默认设置可以通过这个文件进行修改,以便全局
共享
總而言之,项目对象模型将是maven2中最重要的一环,熟悉的掌握POM的配置,将会使其在项目中的应用
变得游刃有余。
3 构建生命周期
所謂的构建生命周期在這里指的是项目构建周期,简称编译,测试,打包,发布等这样的一个过程。
在Maven中,对生命周期进行了封装,只需要对生命周期的范围进行设置,项目在构建时将会执行
指定范围的生命周期.
生命周期在Maven中简单定义为三种类型:清理生命周期(clean),默认生命周期(default)和站点生命周期(site);
其中默认生命周期是最需要熟悉的,它几乎定义了生命周期的所有阶段,具体内容可google或查阅Maven权威指南
当然不同的打包类型也是有不同的执行生命周期的,但它们大都包含在默认生命周期内,只是或多或少的在构建阶段上有所
变化,大致还是相同的。
顺便提示一下,生命周期范围value将使构建执行到指定范围的时候而中止。详细内容自己google吧
4 profile设置
该信息在Maven中通常用于自定义一些设置,或者更改默认设置,或者修改构建移植信息,以及修改激活等等
这部分内容比较宽泛,可根据需要进行学习,但需要有前面的基础,才能学的更好写,因为它基本都是基于成型文件的
基础上所进行的修改 ,感兴趣的话就google一下,目前我对这块内容也不怎么熟悉,希望爱好者能学的更好。
5 依赖管理
使用Maven进行管理的项目,极少有单一项目的管理,因为这样的话,Maven的作用将得不到充分的发挥,且会造成不必要的
繁琐。实现项目依赖管理,使得多项目依赖开发变得更为方便,且能提供很好的管理。由于模块化的开发一直受青睐,但
模块之间的依赖是让人头疼的问题,maven的出现使这些看似琐屑的事变得简单。只要你对Maven POM中的依赖管理配置篇章
多加学习,就可实现多项目之间的依赖管理。同时要注意依赖优化设置等问题.google一下吧
6 Nexus 仓库管理器
仓库管理器就是用来管理依赖jar的工具,由于每Maven构建时,所依赖的jar文件都要从中央仓库下载,会造成资源的浪费,
同时给其他使用maven中央仓库的人造成影响,且占用公司的带宽。使用Nexus可以解决这些问题,并且能达到公司所有项目
共享依赖jar的目的,节省硬盘空间且提高构件速度,同时也可以自由增加第三方jar文件。當然也可以利用它實現遠程代理設置等。
如果你有很多的项目使用 Maven2 且有很多项目依赖的话,熟悉一下nexus吧,它将会极大地提高您的工作效率
具体使用请google
以上6点我说的都很笼统,也算是乱说几句吧,纵观正个Maven,基本上也就上述一些内容,具体的使用,google里多的是,希望
有兴趣的朋友能根据我的提议进行重点学习,我有点懒了,呵呵,希望这些懒能带给别人勤奋。
分享到:
相关推荐
非常好的,资源,实例,都可以运行。从头开始,一步步操作,都有,非常详尽
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期...
Maven学习指南.pdf Maven实战.doc Maven实战.pdf Maven构建并管理Flex项目入门.pdf Maven简单实用教程.docx OTNVD_WebLogicServerDevelopment_CN.pdf 《Maven实战》(国内首本Maven著作)(Maven的安装、配置及使用入门...
该文档简单明了的介绍了pom的相关内容,可以从基础出发了解
里面包含:两本maven电子书(《Maven权威指南中文版》和《Maven实战》)和两个文档(《在maven和jetty环境下eclipse的调试》、《基于Maven的Spring_+_Spring_MVC_+_Mybatis的环境搭建》),内容皆精品。
Maven 权威指南 学习手册 参考手册
包含以下资料: Maven权威指南 Maven2_基础教程 maven2完全使用手册 Maven3实战笔记04Maven的生命周期和插件 Maven实战 Maven学习指南
官方文档:apache-maven Maven快速入门 《Maven权威指南》中文版 Better_Builds_With_Maven(英文版)
另附上学习视频以及课件。 链接: https://pan.baidu.com/s/1ZkczLyVrfBGsIdQ58LXwUA 密码: 3qdj
Maven权威指南 Authors Tim O'Brien (Sonatype, Inc.) , John Casey (Sonatype, Inc.) , Brian Fox (Sonatype, Inc.) , Bruce Snyder () , Jason Van Zyl (Sonatype, Inc.) , Juven Xu () Abstract Maven权威指南...
学习maven最权威的指南
Maven权威指南中文版 最权威的maven学习指南 助你一臂之力
Maven权威指南中文版.pdf 使用Maven学习资料
Maven学习资源
Maven权威指南(中文),maven学习书籍。
包含:Maven2_基础教程.pdf\《Maven权威指南》-电子书下载(PDF)(中文)\maven2完全使用手册.docx\Maven3实战笔记04Maven的生命周期和插件.doc\Maven实战.pdf\Maven学习指南.pdf
ant学习指导文档 maven配置 maven常见问题问答 对于初学或想深入了解maven的童鞋以指导
maven学习笔记,是我个人在学习《Maven权威指南中文版》后总结和记录,分享出来供大家参考。
《Maven权威指南》学习笔记