1、为什么使用Maven
Maven是我们在开发过程中常用的工具,主要用途有两种:
1)方便的下载jar包
2)项目打包
接下来以windows操作系统为例,介绍一下Maven在IDEA中如何设置和常用的功能。

2、下载Maven
在Maven官网(https://maven.apache.org/download.cgi)可以下载到Maven的最新的版本和历史的版本。

截图来自于Maven官网

3、Maven与IDEA版本不兼容问题
如果下载的Maven版本过高,有时会出现与IDEA不兼容的情况。
出现这种情况,需要从Maven Releases History(https://maven.apache.org/docs/history.html)中查看Maven的发布日期,找到在IDEA对应版本发布日期之前,且临近的版本进行测试,如果不行就多试几个版本。

截图来自于Maven官网

找到对应的版本后,从往期版本下载页(https://archive.apache.org/dist/maven/maven-3/)下载对应的Maven发布包

截图来自于Maven官网

4、解压Maven发布包

5、设置环境变量
增加 MAVEN_HOME,值为 ……\apache-maven
在Path中增加:%MAVEN_HOME%\bin;

6、设置Maven配置文件
Maven的配置文件在Maven解压目录的conf文件夹下,名为settings.xml。
比较常用的是 mirrors 配置,可以设置增加下载镜像或Maven私服地址,提高jar包的下载速度。

7、IDEA中配置Maven
打开IDEA,选择 File —> Settings…
找到Maven页签

选择 Maven home path:Maven 程序路径
选择 Use settings file:配置文件地址
选择 Local repository:本地仓库地址

8、添加依赖,下载jar包
添加依赖是Maven最常用的功能,在Maven工程中的pom.xml文件中添加相应的依赖,依赖的来源可以是教程或Maven仓库官网(https://mvnrepository.com/)
在pom文件中添加依赖后,在pom文件上点击鼠标右键,在右键菜单中选择 Maven—> Reload project ,IDEA便会自动下载相应的jar包。

9、打包
项目开发完成后,发布到测试环境或生产环境,需要使用Maven将项目打包。

默认在IDEA的右侧,有一个Maven工具框

在里面找到需要打包的Module,展开后找到 Lifecycle,双击对应的操作即可。
常用的操作有:
clean:清除之前的打包文件
package:打包
install:打包并提交到本地maven仓库

10、结语
今天总结了一下Maven在IDEA中的日常使用,欢迎大家交流。

Maven在IDEA中的日常使用的更多相关文章

  1. Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问

    本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这 ...

  2. Maven+STS工程中Maven Dependencies 文件夹丢失问题

    在我们使用Maven+sts工程中偶尔会出现这种情况: Maven Dependencies文件夹在新打开的工程中丢失,造成 web project 自动编译出错,缺少必要的库文件: 如下图所示的情况 ...

  3. maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet

    主要原因是maven项目里面的jar包吗,没有导入到项目中 maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframewor ...

  4. maven pom.xml 中各个标签元素的作用

    <groupId> : 项目或者组织的唯一标识 <artifactId>项目的通用名称 <artifactId>项目的通用名称 <version> 项目 ...

  5. 如何在Maven和Gradle中配置使用Groovy 2.4与Spock 1.0

    如何在Maven和Gradle中配置使用Groovy 2.4与Spock 1.0 原文 https://dzone.com/articles/spock-10-groovy-24 翻译 hxfiref ...

  6. 解决Maven并行编译中出现打包错误问题的思路

    解决Maven并行编译中出现打包错误问题的思路 并行构建 Maven 3.x 提供了并行编译的能力,通过执行下列命令就可以利用构建服务器的多线程/多核性能提升构建速度: mvn -T 4 clean ...

  7. maven pom.xml中的 build说明

    在Maven的pom.xml文件中,Build相关配置包含两个部分,一个是<build>,另一个是<reporting>,这里我们只介绍<build>. 1. 在M ...

  8. 关于junit包导入不了但是maven本地库中却存在的问题

    导入项目的时候发现junit的类使用不了,于是就去看看包导入了没有 发现包是灰色的,于是猜想可能是maven本地库中包没下载过来 查询了本地库发现包是存在的,这就奇怪的,经过网上查询之后得到解决方案 ...

  9. 向maven依赖包中添加新的jar包

    今天做一个项目测试的时候正好遇到这个问题,查了网上的资料,有两篇写的挺好,两种方法都试了,都可以. 1.个人觉得第一种简单:http://www.360doc.com/content/14/0517/ ...

随机推荐

  1. cut和grep 选取命令

    cut命令 cut:将一段信息的某一段"切"出来,处理的信息是以行为单位.参数: -d :后接分隔字符,与-f一起使用: -f :依据-d的分隔字符将一段信息切割成为数段,用-f取 ...

  2. java基础---数组的查找算法(2)

    一.查找的基本概念 查找分为有序查找和无序查找,这里均以数组为对象,有序查找指的是数组元素有序排列,无序查找指的是数组元素有序或无序排列 平均查找长度(Average Search Length,AS ...

  3. Git submodule 拉取子模块

    $ git clone https://code.Xcode.com.client.git Cloning into 'vipkid-pc-client'... Username for 'https ...

  4. .h .cpp区别

    首先,我们可以将所有东西都放在一个.cpp文件内. 然后编译器就将这个.cpp编译成.obj,obj是什么东西? 就是编译单元了.一个程序,可以由一个编译单元组成, 也可以有多个编译单元组成. 如果你 ...

  5. lombok之@Data

    在实体类的编写过程中,常常需要应用大量的get.set方法,需要写大量的重复代码,即有的工具有自动生成功能,当时也会使实体类中产生大量冗余代码,使得代码变,springboot为我们提供了相应注解可以 ...

  6. c++中的基本IO

    引言 c++不直接处理输入和输出,而是通过标准库中的类型处理IO.IO的设备可以是文件.控制台.string.c++主要定义了三种IO类型,分别被包含在iostream.fstream.sstream ...

  7. python的代码块和if条件表达式

    代码块和if条件表达式 代码块 什么是代码块 以冒号作为开始,用缩进来划分作用域. 在之后的学习当中,使用if条件语句.for.while循环语句.定义函数.定义类等诸多地方都会涵盖代码的概念. 什么 ...

  8. 数据结构与算法-排序(二)选择排序(Selection Sort)

    摘要 选择排序的逻辑是先遍历比较出序列中最大的,然后把最大的放在最后位置. 遵循这个逻辑,用代码实现时,做到1.减少比较次数之外,这里引入一个新的指标 - 稳定性,2.保证排序过程中的稳定性也是一个优 ...

  9. SpringData JPA 使用原生 SQL

    在实现个人博客系统的归档功能的时候,遇上这样的需求: 先把数据库中所有条目的时间按照年月分组,并查询出年月(String)的列表 根据年月字符串查询符合条件的博客,并返回博客列表 由于数据访问层使用的 ...

  10. iOS实现常用地图坐标系转换(swift5)

    // 桥接后,OC工程也可用 // HTMCoorTransform.swift // HTMapKit // // Created by LongMa on 2021/8/3. // import ...