Maven 浅谈

来源:互联网 发布:联想网络同传怎么用 编辑:程序博客网 时间:2024/06/05 03:24
Maven是什么,以及为什么要使用Maven
Maven是一个构建工具,服务与构建.使用Maven配置好项目后,输入简单的命令,如:mvn clean install,Maven会帮我们处理那些繁琐的任务. 
Maven是跨平台的. 
Maven最大化的消除了构建的重复.
Maven可以帮助我们标准化构建过程.所有的项目都是简单一致的,
总之,Maven作为一个构建工具,不仅帮我们自动化构建,还能抽象构建过程,提供构建任务实现.他跨平台,对外提供一致的操作接口,这一切足以使他成为优秀的,流行的构建工具.
但是Maven不仅是构建工具,他还是一个依赖管理工具和项目信息管理工具.他还提供了中央仓库,能帮我们自动下载构件.
使用Maven还能享受一个额外的好处,即Maven对于项目目录结构、测试用例命名方式等内容都有既定的规则,只要遵循了这些成熟的规则,用户在项目间切换的时候就免去了额外的学习成本,可以说是约定优于配置(Convention Over Configuration)。


maven的5大坐标
1.    groupId?:定义当前Maven项目隶属的实际项目
2.    artifactId : 该元素定义当前实际项目中的一个Maven项目(模块)
3.    version : 该元素定义Maven项目当前的版本
4.    packaging :定义Maven项目打包的方式
5.    classifier: 该元素用来帮助定义构建输出的一些附件


标签scope为test时,main方法里面能不能调用

scope依赖作用域  不能 
依赖的传递:
作用域是test的包不会传递到引用这个项目的其它项目,但如果不是test会传递依赖到其它项目。
如:项目A中有一个依赖包junit4.10,它的作用域是test
现在有一个项目B,引用项目A,如果项目B要使用junit4.10就必须自己重新定义依赖关系。【因为不会传递依赖,所以不会从项目A中得到】
但:如果作用域是其它的,不是test
那么项目B可以直接使用不用自己再定义一个依赖关系。【因为会从项目A中自动传递依赖,而得到】