• 1    概述

    • 1.1 Maven是什么
    • 1.2 为什么要用Maven
  • 2    怎么用Maven
    • 2.1 Maven仓库
    • 2.2 Maven安装
    • 2.3 Eclipse插件
    • 2.4 Maven常用命令
    • 2.5 Android插件
  • 3    资料

1    概述

1.1 Maven是什么

Maven属于项目管理工具,包含一个依赖管理系统,一个项目对象模型,一组标准集合(约定优于配置),

一个项目生命周期,一组运行在生命周期阶段的插件。(摘自参考书. 3.5. 核心概念)

项目对象模型(Project Object Model POM)是Maven用来描述项目的依赖、构建配置、构件,通过pom.xml文件来描述。

Maven的生命周期包括三套:

1、Clean Lifecycle 在进行真正的构建之前进行一些清理工作。

2、Default Lifecycle 构建的核心部分,编译、测试、打包、部署等。

3、Site Lifecycle 生成项目报告、站点、发布站点。

1.2 为什么要用Maven

1)    如何方便管理Jar包的一致性?

2)    如何管理工程之间的依赖关系?

3)    如何处理Jar包版本冲突?

4)    如何处理有BUG的Jar依赖?

5)    如何做到自动构建、部署?

6)    可以做到自动构建apk并自动签名

2    怎么用Maven

2.1 Maven仓库

Maven仓库一般分为远程仓库和客户端本地仓库。

Maven客户端通过apache-maven-3.0.4\conf \settings.xml

文件来配置项目工程使用的仓库信息及本地仓库的存储位置。

本地仓库是远程仓库的缓冲子集,如果本地仓库没有,

Maven会从远程仓库下载到本地仓库,下次使用就不用去远程仓库下载。

Maven远程仓库是用于集中管理和存储第三方Jar包的服务器。

远程仓库又分为中央仓库服务器和镜像服务器,

中央仓库服务器是指Maven官方的仓库服务器,

镜像服务器是指其他搭建的仓库服务器。

企业可以搭建自己的仓库服务器,一般称为私服。

2.2 Maven安装

下载并解压apache-maven-3.0.4,在环境变量中设置M2_HOME为你的apache-maven-3.0.4目录的路径。

在path环境变量中增加%M2_HOME%\bin;打开CMD,输入mvn –v,就会显示出Maven的版本。

2.3 Eclipse插件

安装M2eclipse(请参见Maven实战14.3),就可以通过Eclipse创建或导入一个Maven项目。

针对一个Maven项目可以进行

1、添加依赖和插件;

2、更新依赖、快照和源代码文件夹;

3、创建一个Maven模块等。

2.4 Maven常用命令

1、创建Maven的普通JAVA项目;

2、创建Maven的Web项目;

3、编译源代码;

4、运行测试;

5、运行测试;

6、打包;

7、在本地安装jar;

8、清除产生的项目。

2.5 Android插件

安装Eclipse插件,Android-maven-plugin。

在新建Maven工程时,添加android原型archieve。

(参见<建立Maven Android项目>)

3    资料

《Maven权威指南》

《Maven生命周期详解》

<建立Maven Android项目>

http://blog.csdn.net/anialy/article/details/8539182

maven学习笔记 1的更多相关文章

  1. Maven学习笔记-03-Eclipse下maven项目在Tomcat7和Jetty6中部署调试

    现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...

  2. Maven学习笔记-04-Eclipse下maven项目在Tomcat7和Jetty6中部署调试

    现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...

  3. Maven学习笔记—仓库

    Maven仓库 1 什么是Maven仓库 在Maven中,任何一个依赖.插件或者项目构建的输出,都可以成为构件,而Maven通常在某个位置统一的存储所有Maven项目共享的构件,这个统一的位置就是Ma ...

  4. MAVEN学习笔记之Maven插件的应用(4)

    MAVEN学习笔记之Maven插件的应用(4) <build> <pluginManagement> <plugins> <plugin> <gr ...

  5. MAVEN学习笔记之Maven生命周期和插件简介(3)

    MAVEN学习笔记之Maven生命周期和插件简介(3) clean compile site三套生命周期相互独立. clean pre-clean 执行清理前的工作 clean 清理上一次构建生成的所 ...

  6. MAVEN学习笔记之私服Nexus(2)

    MAVEN学习笔记之私服Nexus(2) 私有服务器搭建 Nexus www.snatype.org下载 snatype-work 是默认nexus存储nexus a:将bin添加到环境中 Admin ...

  7. MAVEN学习笔记之基础(1)

    MAVEN学习笔记之基础(1) 0.0 maven文件结构 pom.xml src main java package resource test java package resource targ ...

  8. Maven 学习笔记(二)

    前面一文——Maven 学习笔记(一)中已经提到了 pom 的大部分配置,Maven 本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给创建来完成,每一个任务都会对应一个插件 ...

  9. TODO maven学习笔记

    maven是什么? 我的体会 我理解得maven就是一个构建工具,可以做一些项目得整合操作,我们把一些常见得操作,封装在maven里面,并给它命名成 clean,test,compile,这些步骤都是 ...

  10. Maven学习笔记(1)之安装Maven

    此笔记是学习Maven时自己摸索+各种百度而来,并非全部原创,望与各位一同学习,勿拍~勿拍~ 安装步骤 1.下载Maven的最新版本,地址:http://maven.apache.org/downlo ...

随机推荐

  1. 关于No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=armv7 armv7s)使用百度地图的解决办法

    出现的原因:armv7s是应用在iPhone 5 A6 的架构上的解决的方式:1,在Project target里“Architectures”设置为“Standard (armv7,armv7s)” ...

  2. (╭ ̄3 ̄)╭ 小希的迷宫II

    (╭ ̄3 ̄)╭ 小希的迷宫II TimeLimit: 2000/1000 MS (Java/Others)  MenoryLimit: 65536/32768 K (Java/Others) 64-b ...

  3. 使用observable数组(Working with observable arrays)

    observable数组(observable arrays) 如果你要探测和响应一个对象的变化,你应该用observables.如果你需要探测和响应一个集合对象的变化,你应该用observableA ...

  4. 关于oracle数据库(10)函数

    分析函数,用于统计排名 语法:函数名() over(order by 排序字段 asc | desc) row_number() 无论值是否相等,生成连续的行号 -- 1,2,3,4, select ...

  5. Linux RSS/RPS/RFS/XPS对比

    RSS适合于多队列网卡,把不同的流分散的不同的网卡多列中,至于网卡队列由哪个cpu处理还需要绑定网卡队列中断与cpu RPS:适合于单队列网卡或者虚拟网卡,把该网卡上的数据流让多个cpu处理 RFS: ...

  6. input时间输入框小解

    date    年月日 month 年月 week   年周(ios上不可用,android部分会显示当前是第几周) time   时分(ios不显示时/分的字样) datetime 为一输入框,基本 ...

  7. C中内存分配方式[转载]

    在C 中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 一.简介: 1.栈,就是那些由编译器在需要的时候分配,在无需的时候自动清除的变量的存储区.里面的变量通常是局部变 ...

  8. HDU 5807 Keep In Touch

    加维降复杂度 #pragma comment(linker, "/STACK:1024000000,1024000000") #include<cstdio> #inc ...

  9. HDU 3081 Marriage Match II

    二分图的最大匹配+并查集 每次匹配完之后,删除当前匹配到的边. #include<cstdio> #include<cstring> #include<cmath> ...

  10. JDK和JRE的区别

    JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE.Java工具和Java基础类库.Java Runtime Enviro ...