今天开始记录Maven的学习过程。

☞ 相关明细

  • 操作系统:win7
  • 参考书籍:《maven-definitive-guide_zh》(Maven权威指南)
  • maven版本:3.3.3

☞ 下载和安装

  下载地址:Maven下载

  

  解压缩之后,配置环境变量M2_HOME、PATH(具体配置详情略,安装过JDK的都应该清楚);M2_HOME指向maven安装目录,PATH末尾追加%M2_HOME%\bin

  打开cmd窗口,输入mvn -v,查看maven的版本,验证是否安装成功。

  

☞ 自定义配置和仓库

  • 复制${M2_HOME}/conf/settings.xml到C:\Users\username\.m2\下;修改该目录下的settings.xml,即自定义配置
  • 仓库分为远程仓库和本地仓库,默认的远程仓库地址是https://repo.maven.apache.org/maven2;本地仓库即C:\Users\username\.m2\repository
    maven是基于很多插件工作的,初始下载只包含核心的内容,然后按需从远程仓库进行下载,下载的内容放在本地仓库。
    如果当前网络无法访问默认的远程仓库(https://repo.maven.apache.org/maven2),可以在settings.xml中配置仓库的mirror。你可以在浏览器中输入默认仓库的地址,以确定是否需要配置。

    这里提供一个mirror:http://repo1.maven.org/maven2/
    你也可以在网上去找其他mirror,但是需要提醒:有些mirror仓库不完整,会因为无法获取依赖而中断;比如http://mirrors.ibiblio.org/pub/mirrors/maven2缺少了org.apache.maven.surefire:surefire-providers:2.12.4:jar

    你可以用同样的办法,看是否可以访问;将其作为自定义配置文件settings.xml中mirrors标签的子标签,如:

☞ 获得帮助

  你可以从官网http://maven.apache.org获得,也可以从诸如论坛、博客中获得。maven中有一个help插件,也可以提供帮助。help本身属于一个插件,也需要从远程仓库中下载。比如你可以使用mvn help:describe -Dplugin=help命令来获取help插件的相关帮助信息,maven会自动检查本地仓库是否已有该插件的内容,并按需下载:

图:下载中

图:下载完成,并打印帮助信息

让我们分析一下所用到的命令:

mvn help:describe -Dplugin=help
这句话的意思是:执行help插件的describe目标,获取help参数的简要介绍,-D是传参的前缀。

如果想获取插件更加详细的信息,可以使用:
 mvn help:describe -Dplugin=help -Ddetail

如果想获取插件特定目标的相关信息,可以使用命令:
 mvn help:describe -Dplugin=help -Dmojo=describe -Ddetail

1. Maven - 开始的更多相关文章

  1. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  2. 理解Maven中的SNAPSHOT版本和正式版本

    Maven中建立的依赖管理方式基本已成为Java语言依赖管理的事实标准,Maven的替代者Gradle也基本沿用了Maven的依赖管理机制.在Maven依赖管理中,唯一标识一个依赖项是由该依赖项的三个 ...

  3. 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo

    Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...

  4. 安装eclipse的maven插件

    我们团队用maven来管理项目需要的库文件,其实以前都没听过maven,第一次接触这个,师兄要我直接去装下这个,开始以为还挺简单的,没想到中间遇到了一些小麻烦,现在把我成功安装maven的过程分享下, ...

  5. MAVEN学习-第一个Maven项目的构建

    MAVEN安装成功之后就可以进行项目的构建和管理了: 为什么要用maven进行项目的构建和管理? 对于初学者来说一个最直接的也是最容易里的优点在于JAR包的管理,相对于以前开发一个项目的时候我们需要用 ...

  6. Maven 代理设置

    在maven的安装目录下 %MAVEN_HOME%/conf/setting.xml 中进行设置 <proxies>    <!-- proxy     | Specificatio ...

  7. spring maven pom.xml设置

    spring pom.xml设置 <?xml version="1.0" encoding="UTF-8"?> <project xmlns= ...

  8. maven依赖查询地址

    http://search.maven.org/#search%7Cga%7C1%7C

  9. maven 中snapshot版本和release版本的区别

    maven中的仓库分为两种,snapshot快照仓库和release发布仓库.snapshot快照仓库用于保存开发过程中的不稳定版本,release正式仓库则是用来保存稳定的发行版本.定义一个组件/模 ...

  10. Maven多模块,Dubbo分布式服务框架,SpringMVC,前后端分离项目,基础搭建,搭建过程出现的问题

    现互联网公司后端架构常用到Spring+SpringMVC+MyBatis,通过Maven来构建.通过学习,我已经掌握了基本的搭建过程,写下基础文章为而后的深入学习奠定基础. 首先说一下这篇文章的主要 ...

随机推荐

  1. 「模板」网络最大流 FF && EK && Dinic && SAP && ISAP

    话不多说上代码. Ford-Fulkerson(FF) #include <algorithm> #include <climits> #include <cstdio& ...

  2. jQuery简单日历插件版

    先来看demo:http://codepen.io/jonechen/pen/xOgZMz 插件代码: ; (function($) { var Calendar = function(ele, op ...

  3. UIPageControl---iOS-Apple苹果官方文档翻译

    本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/Ch ...

  4. [bzoj3993][SDOI2015]星际战争-二分+最大流

    Brief Description 3333年,在银河系的某星球上,X军团和Y军团正在激烈地作战.在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进攻X军团的阵地,其中第i个巨型机器人的装甲值为Ai. ...

  5. poj 2253 Frogger (dijkstra最短路)

    题目链接:http://poj.org/problem?id=2253 Frogger Time Limit: 1000MS   Memory Limit: 65536K Total Submissi ...

  6. 分布式实时日志分析解决方案ELK部署架构

    一.概述 ELK 已经成为目前最流行的集中式日志解决方案,它主要是由Beats.Logstash.Elasticsearch.Kibana等组件组成,来共同完成实时日志的收集,存储,展示等一站式的解决 ...

  7. mysql增删

    create table msg (id int, name varchar(10)); 插入语句 insert into msg values(1,'root'); insert into msg( ...

  8. Laravel 项目上线的一些注意事项

    1.应用生产环境 在 .env 文件里设置 APP_ENV=production 2.关闭调试模式 在 .env 文件中设置 APP_DEBUG = false 3.生成 APP_KEY 使用 Art ...

  9. DIV+CSS综合实例【传智PHP首页】

    1.首页结构 2.准备工作 所有素材放到与当前网页同级的目录下: 网页背景色.背景图: 主页宽度:1000px: 创建CSS文件,将CSS文件引入到当前的HTML文件中. 3.实现 效果图: HTML ...

  10. java===java习题---Josephu问题

    package testbotoo; /** * * @author */ public class Demo4 { public static void main(String[] args) { ...