maven学习
来源:互联网 发布:elementary os ubuntu 编辑:程序博客网 时间:2024/06/06 06:55
1. jar仓库位置默认是:X:\Documents and Settings\Administrator.LIPENG\.m2\repository
X是你操作系统所在盘符)
2. 分析一下配置文件pom.xml的结构,以junit为例
<dependencies>
<dependency>
<groupId>junit</groupid>
<artifactId>junit</artifactId>
<version>3.8.1</version>
</dependency>
<dependencies>
看看本地仓库目录结构
Repository
--junit
--junit
--3.8.1
--junit-3.8.1.jar
2. Maven 专家的意思
Maven是一个项目管理工具,它包含了
一个项目对象模型 (Project Object Model),
一组标准集合,
一个项目生命周期(ProjectLifecycle),
一个依赖管理系统(Dependency Management System),和
用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。
个人理解:
MAVEN内置软件仓库,帮助构建打包管理项目。
3. Maven是基于项目对象模型(POM)
可以通过一小段描述心里来管理项目的构建,报告和文档的软件项目管理工具
4. pom文件中包含了项目的信息和maven build项目所需的配置信息,通常有项目信息(如版本、成员)、项目的依赖、插件和goal、build选项等等
pon是可以继承的,通常对于一个大型的项目或是多个module的情况,子模块的pom需要制定父模块的pom
5. 节点含义
project pom文件的顶级元素
modelVersion 所使用的object model版本,为了确保稳定的使用,这个元素是强制性的。除非maven开发者升级模板,否则不需要修改
groupId 是项目创建团体或组织的唯一标志符,通常是域名倒写,如groupId org.apache.maven.plugins就是为所有maven插件预留的
artifactId 是项目artifact唯一的基地址名
packaging artifact打包的方式,如jar、war、ear等等。默认为jar。这个不仅表示项目最终产生何种后缀的文件,也表示build过程使用什么样的lifecycle。
version artifact的版本,通常能看见为类似0.0.1-SNAPSHOT,其中SNAPSHOT表示项目开发中,为开发版本
name 表示项目的展现名,在maven生成的文档中使用
url表示项目的地址,在maven生成的文档中使用
description 表示项目的描述,在maven生成的文档中使用
dependencies 表示依赖,在子节点dependencies中添加具体依赖的groupId artifactId和version
build 表示build配置
parent 表示父pom
6. 其中groupId:artifactId:version唯一确定了一个artifact
7. Artifact
这个有点不好解释,大致说就是一个项目将要产生的文件,可以是jar文件,源文件,二进制文件,war文件,甚至是pom文件。每个artifact都由groupId:artifactId:version组成的标识符唯一识别。需要被使用(依赖)的artifact都要放在仓库(见Repository)中
8. Repositories
Repositories是用来存储Artifact的。如果说我们的项目产生的Artifact是一个个小工具,那么Repositories就是一个仓库,里面有我们自己创建的工具,也可以储存别人造的工具,我们在项目中需要使用某种工具时,在pom中声明dependency,编译代码时就会根据dependency去下载工具(Artifact),供自己使用。
- maven 学习
- Maven学习
- maven学习
- MAVEN学习
- maven学习
- maven学习
- Maven学习
- maven学习
- Maven学习
- maven学习
- maven学习
- Maven 学习
- maven学习
- Maven学习
- MAVEN学习
- maven学习
- Maven学习
- maven学习
- 弹出提示框插件
- cin.clear()、cin.sync()和cin.ignor()的用法
- iOS数组内容不重复
- linux v4L2 初步框架
- java 解决simpledateformat线程安全问题
- maven学习
- Unix:用户自定义信号-SIGUSR1和SIGUSR2
- spring mvc4.2 ContentNegotiatingViewResolver 根据路径后缀,选择不同视图
- tomcat工作原理
- Linux下Tomcat版本升级方案
- ASP.NET MVC(4)
- 深入理解Java:SimpleDateFormat安全的时间格式化
- Android版手机斗地主游戏源码
- 颜色知识,ps调整色彩