Maven是一个项目管理工具,它包含了一个项目对象模型,一组标准集合,一个项目声明周期,一个依赖管理系统和用来运行定义在生命周期阶段中插件目标的逻辑。Maven采用了约定优于配置这一基本原则。在没有自定义的情况下,源码假定是在src/mian/java下、资源文件假定是在src/main/resources下、测试代码假定在src/test下。Maven假定把编译好的字节码放到/target/classes下,并在/target创建一个可分发的JAR文件。Maven被设计成将主要的职责委派给一组Maven插件,这些插件可以影响Maven的生命周期,提供对目标的访问。

Maven的安装

  Maven能在所有验证过的JAVA兼容的JDK上工作,所以在安装Maven之前,需要保证已经安装JDK。

  下载Maven:你可以从Apache Maven项目的Web站点下在Maven。

  安装Maven:不同操作系统之间有很大的区别。在Windows上安装。将Maven解压到特定的文件夹,然后设置PATH和M2_HOME环境变量。

  验证Maven安装:打开cmd,运行mvn –v命令。

用户相关的配置

  在maven解压目录下/config/settings.xml:改文件包含了用户相关的认仓库和其他信息的配置,用来定自义Maven的行为。

<settings>
<servers>
<server>
<id>tomcat</id>
<username>admin</username>
<password>admin</password>
</server>
</servers> <mirrors>
<mirror>
<id>repo1</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo1.maven.org/</url>
</mirror> <mirror>
<id>central</id>
<mirrorOf>*</mirrorOf> <url>http://mvn.ms.netease.com/nexus/content/groups/public/</url>
</mirror>
</mirrors>
<localRepository>D:/repo</localRepository>
</settings>

  ~/.m2/repository/:该目录是本地仓库。当从远程Maven仓库下载依赖的时候,Maven在本地仓库存储了这个依赖的一个副本。其中本地仓库可以在settings中通过<localRepository>D:/repo</localRepository>修改。

  在windows系统~符号表示home目录。在win7就在用户空间下。

Maven Help

  Maven Help插件有四个目标。前三个目标active-profiles,effective-pom和effective-settings描述一个特定的项目,它们必须在项目的目录下运行。最后一个目标describe比较复杂,展示某个插件或者插件目标的相关信息。

  • help:active-profiles 列出当前构建中活动的Profile(项目的、用户的、全局的)
  • help:effective-pom 显示当前构建的实际POM,包含活动的Profile。
  • help:effective-settings 打印出项目的实际settings, 包括从全局的settings和用户级别settings继承的配置。
  • help:describe。描述插件的属性。它不需要在项目目录下运行。但是你必须提供你想要描述插件的groupId和artifactId。

  该选项能让你查看插件所有的目标及相关参数。你可以通过设置mojo参数和plugin参数,获取单个目标的信息。也可以使用-Dfull获取更详细信息。

Maven学习-简介、安装的更多相关文章

  1. maven 学习1 -安装maven 并执行编译命令

    一.maven 下载与安装(安装好jdk的前提下) 1.下载地址:http://maven.apache.org/download.cgi  (选择最新的zip版本),下载完毕后解压 2.安装:系统p ...

  2. maven学习--1.安装与配置

    转自 http://www.cnblogs.com/xdp-gacl/p/3498271.html 1.下载地址:http://maven.apache.org/download.cgi 2.解压缩包 ...

  3. Maven学习笔记—安装和配置

    Maven的安装和配置 1 在windows上安装maven 1.1 下载maven 访问maven的下载页面:http://maven.apache.org/download.cgi,选择版本下载即 ...

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

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

  5. maven学习(1)下载和安装和初步使用(手动构建项目和自动构建项目)

    1:背景 关于项目的搭建,有些人使用开发工具搭建项目,然后将项目所依赖第三方jar 复制到类路径下面,上述搭建方式没有第三方类库的依赖关系,在导入一个jar包的时候,这个jar包还可能依赖其他jar包 ...

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

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

  7. maven学习之二M2_HOME简介

    在<maven学习之一>中介绍了M2_HOME指向了maven的安装目录,如下图: weiwan..................

  8. Java-Maven(一):Maven的简介与安装

    Maven的简介 Maven是什么? Maven是一个项目管理和整合的工具.Maven为开发者提供了一套完整的构建生命周期框架.开发者可以通过Maven更快的自动完成工程的基础构建陪孩子,因为Mave ...

  9. Maven学习第2期---Maven安装配置

    一.Maven介绍 1.1 何为Maven Maven这个词可以翻译为"知识的积累",也可以翻译为"专家"或"内行".Maven是一个跨平台 ...

随机推荐

  1. dispaly属性,position属性

    position:absolute;绝对定位相对于父元素(父元素设为relative) position:relative;相对定位相对于自己 position:fixed;固定定位相对于浏览器 di ...

  2. unity3d 中文乱码解决方法——cs代码文件格式批量转化UTF8

    在Unity3d中经常会碰到中文乱码的问题,比如代码中的[AddComponentMenu("GameDef/AI/战机AI")],注释,中文文本等等 其原因在于,unity本身是 ...

  3. [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(二)

    一步步打造一个简单的 MVC 电商网站 - BooksStore(二) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 前: ...

  4. RN 导入原有Xcode项目中,引入Pod依赖出现的问题与解决

    RN 导入原有Xcode项目中,引入Pod依赖出现的问题与解决 前言 最近学习React Native技术.将RN引入到原来Xcode项目中有一步:给原来Xcode项目添加所需要的Pod依赖 写好Po ...

  5. JQ实战一之烟花

    本次的效果大概为当用户点击网页时,网页下方弹出一个类似烟花的长条条,然后在桌面上散开以达成类似烟花的特效.话不多说先上图. 首先布局,布局很简单 <style> body { backgr ...

  6. UIDatePicker的使用

    UIDatePicker的介绍 UIDatePicker这个类的对象让用户可以在多个车轮上选择日期和时间.iPhone手机上的‘时钟’应用程序中的时间与闹铃中便使用了该控件.使用这个控件时,如果你能配 ...

  7. 使用SharedPreferences存储用户配置信息

    用SharedPreferences来保存用户的基本配置信息非常的方便,实现起来也很容易:以下是一个简单的例子: 效果截图:    主要代码: public class MainActivity ex ...

  8. [转]SecureCRT右键粘贴的设置

    1.习惯用putty的朋友,一般都习惯鼠标右键自动粘贴的功能,对于SecureCRT6.0.2 ,这个功能也已经是默认配置了. 老版本的SecureCRT其实也有这个功能,只是不是默认设置,很多人不知 ...

  9. codevs2019 Uva10029 递变阶梯

    提交地址:[codevs][Uva] 题目描述  递变是指通过增加.减少或改变单词x中的一个字母,使它变成字典中的另一个单词y.比如将dig变成dog,将dog变成do都是递变.递变阶梯是一个按字典序 ...

  10. javascript的getter和setter(转)

    显然这是一个无关IE(高级IE除外)的话题,尽管如此,有兴趣的同学还是一起来认识一下ECMAScript5标准中getter和setter的实现.在一个对象中,操作其中的属性或方法,通常运用最多的就是 ...