Maven 结合 IDEA 入门实践
一、Maven 基本安装
1. 下载
首先来到 http://maven.apache.org/download.cgi ,直接下载以 -bin.zip 结尾的文件,如图
2. 存储位置
将其解压后,考虑与 jdk 一起放到 C 盘,方便管理:
3. 配置 MVN_HOME 系统环境变量
这一步的配置类似于 JAVA_HOME,其路径值也只需指向文件夹所在位置即可,比如 C:\Program Files\Java\apache-maven-3.3.1,切记不要加 \bin。
4. 配置 path 系统环境变量
基于 MVN_HOME 的配置,将路径引导到 \bin 目录下:
path:%JAVA_HOME%\bin; %MVN_HOME%\bin;
5. 新版本升级
每当有新版本的 Maven 下载到本地时,只需要把 %MVN_HOME% 的路径指向新版本 Maven 的所在物理路径,其他一律不需要变动,这也是设置 MVN_HOME 的意义所在。
最后重启 cmd,运行 mvn -v 就可以检查新版本号了。
二、settings.xml 配置文件
安装 Maven 完毕后,为便于管理一般还可以针对其“依赖包”的存储位置进行指定。
1. 配置 localRepository 节点
确定好依赖包要存储的路径位置,然后修改 localRepository 属性,该路径可自由指定:
<localRepository>D:\Maven-3.3.9\repository</localRepository>
该地址的内容如图:
提醒:如果 Intellij Idea 中自定义了 Maven,务必确保“Local repository”与此处配置的 localRepository 相同,以方便统一管理。
2. 配置镜像 mirror
有时候默认的镜像地址属于国外网站导致访问不畅,所以有必要进行替换。
国外
<mirror> <id>mirrorId</id> <name>Human Readable Name for this Mirror.</name> <url>http://repo1.maven.org/maven2</url> <mirrorOf>central</mirrorOf> </mirror>
国内(阿里云镜像:http://maven.aliyun.com/nexus/#welcome)
<mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>
这样,所有的 jar 包依赖项都会从新指定的 url 中下载。
三、与 IDEA 结合
我没有使用 IDEA 自带的 Maven,一方面是因为它的版本偏低,另外该版本与自己安装的 Maven 版本也不一致,容易导致不一致的结果,于是索性就放弃了 IDEA 自带的 Maven。
1. 基础配置
IDEA 中配置 Maven 的位置如图:
指定 Maven home directory 为 E:\Java\apache-maven-3.3.9,即 Maven 所安装的位置。
指定 User settings file 为 E:\Java\apache-maven-3.3.9\conf\settings.xml,同样也指定到 Maven 所安装的位置的 settings.xml 文件。
指定 Local repository 为期望的存储位置,务必确保该地址与 settings.xml 中 localRepository 相同,即都是 D:\Maven-3.3.9\repository
<localRepository>D:\Maven-3.3.9\repository</localRepository>
2. 运行时配置(Runner)
为了在任何时候能应用到这个配置,需要指定配置“For default project”。
- 一劳永逸式配置
设置路径 File->Other Settings->Default Settings,如图:
接着选中 Maven / Runner,设置 VM Options 的值为“-DarchetypeCatalog=internal”:
- 临时配置
另一种配置方式是“即时配置”,也就是每次在创建 artifact 时顺便予以配置:
如上图的 archetypeCatalog=internal,这样在创建相关组件模板时就只基于本地已有的组件来创建,不再因网络延时而导致异常。
archetypeCatalog 的值有三种:
- internal——maven-archetype-plugin内置的
- local——本地的,位置为~/.m2/archetype-catalog.xml
- remote——指向Maven中央仓库的Catalog
通过以上的三步配置,Maven 和 IDEA 的结合使用就比较有条理了,特别强调的是务必要将依赖包的位置进行统一,避免重复下载。
Maven 结合 IDEA 入门实践的更多相关文章
- 分布式学习系列【dubbo入门实践】
分布式学习系列[dubbo入门实践] dubbo架构 组成部分:provider,consumer,registry,monitor: provider,consumer注册,订阅类似于消息队列的注册 ...
- 这是一次 docker 入门实践
前言 其实接触 docker 也有一段时间了,但是一直没有做下总结,现在网上关于 docker 的介绍也有很多了,本着好记性不如烂笔头的原则,还是自己再记录一波吧. 实现目标 安装 docker ce ...
- 转载maven安装,配置,入门
转载:http://www.cnblogs.com/dcba1112/archive/2011/05/01/2033805.html 本书代码下载 大家可以从我的网站下载本书的代码:http://ww ...
- Spring Boot WebFlux 快速入门实践
02:WebFlux 快速入门实践 Spring Boot 2.0 spring.io 官网有句醒目的话是: BUILD ANYTHING WITH SPRING BOOT Spring Boot ( ...
- Spring Boot WebFlux-01——WebFlux 快速入门实践
第01课:WebFlux 快速入门实践 Spring Boot 2.0 spring.io 官网有句醒目的话是: BUILD ANYTHING WITH SPRING BOOT Spring Boot ...
- sass、less和stylus的安装使用和入门实践
刚 开始的时候,说实话,我很反感使用css预处理器这种新玩意的,因为其中涉及到了编程的东西,私以为很复杂,而且考虑到项目不是一天能够完成的,也很少是 一个人完成的,对于这种团队的项目开发,前端实践用c ...
- 学习笔记——Maven实战(四)基于Maven的持续集成实践
Martin的<持续集成> 相信很多读者和我一样,最早接触到持续集成的概念是来自Martin的著名文章<持续集成>,该文最早发布于2000年9月,之后在2006年进行了一次修订 ...
- Django入门实践(三)
Django入门实践(三) Django简单应用 前面简单示例说明了views和Template的工作过程,但是Django最核心的是App,涉及到App则会和Model(数据库)打交道.下面举的例子 ...
- Django入门实践(二)
Django入门实践(二) Django模板简单实例 上篇中将html写在了views中,这种混合方式(指Template和views混在一起)不适合大型开发,而且代码不易管理和维护,下面就用Djan ...
随机推荐
- 201521123074 《Java程序设计》第1周学习总结
1. 本章学习总结第一周学习总结: 学习了java语言的历史与发展,运行过程,安装了eclipse编程平台,试着编写了java程序. 2. 书面作业: Q 1.为什么java程序可以跨平台运行?执行j ...
- java 程序编写规则(自己总结)
1.命名规范 (1)所有的标示符都只能用ASCⅡ字母(A-Z或a-z).数字(0-9)和下划线"_". (2)类名是一个名词,采用大小写混合的方式,每个单词的首字母大写.例如:Us ...
- SAP高可用性(HA)
1.SAP系统高可用的要求 高可用性是从终端用户的角度来需求,及要求最大化系统的可用性.其目的是降低意外系统关闭时间(服务器生效.存储失效.操作系统失败--),减少预期系统关闭时间(系统及架构的维护. ...
- 25个最基本的JavaScript面试问题及答案
1.使用 typeof bar === "object" 来确定 bar 是否是对象的潜在陷阱是什么?如何避免这个陷阱? 尽管 typeof bar === "objec ...
- Linux服务器硬盘状态查看
首先执行fdisk -l最底下 Device Start End Sectors Size Type /dev/vda1 2048 6143 4096 2M BIOS boot /dev/vda2 6 ...
- MyBatis学习(四)XML配置文件之SQL映射的XML文件
SQL映射文件常用的元素: 1.select 查询语句是MyBatis最常用的语句之一. 执行简单查询的select元素是非常简单的: <select id="selectUser&q ...
- Dodobox一个基于所有平台的嵌入式操作系统(OS)
DodoBox是为广大应用开始者提供的一个跨平台应用发布平台.它提供了客户端和服务器端的SDK及详细的开发者帮助文件,帮助开发者创建.移植软件应用或游戏应用. DodoBox基于OpenGL技术,提供 ...
- java 使用redis 数据库
[TOC] java 使用redis 数据库 连接redis package com.wsc.redis.Test1; import java.util.List; import java.util. ...
- echo和print的区别
1.echo可以同时输出多个字符串: echo 'this',' string',' is'," hello world\n"; 2.print有返回值,但是运行速度上echo比较 ...
- css之outline实现圆角效果
对,你没有看错,outline也可以实现圆角,不过请先读完自然会知道结果: ============================================================== ...