Maven基础

简介: Maven基础

一、Maven是什么?


1、Apache Maven 是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档


2、官网:http://maven.apache.org/


3、Maven 作用:


 ①标准化的项目结构


 ②标准化的构建流程


 ③方便的依赖管理


Maven提供了一套标准化的项目结构,所有IDE使用Maven构建的项目结构完全一样,所有IDE创建的Maven项目可以通用


4、Maven是专门用于管理和构建Java项目的工具,它的主要功能有:


提供了一套标准化的项目结构


提供了一套标准化的构建流程(编译,测试,打包,发布……)


提供了一套依赖管理机制


5、Maven 模型:


0a2653c851af460fa595bd959398a8f1.png


6、仓库分类:


(1)本地仓库:自己计算机上的一个目录


(2)中央仓库:由Maven团队维护的全球唯一的仓库


  地址https://repo1.maven.org/maven2/

(3)远程仓库(私服):一般由公司团队搭建的私有仓库

  当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar包:


  如果有,则在项目直接引用;


  如果没有,则去中央仓库中下载对应的jar包到本地仓库。


  搭建远程仓库,将来jar包的查找顺序则变为:


  本地仓库—> 远程仓库—> 中央仓库


2d65d23f6d4748949b924e4057485923.png


二、Maven的安装配置


1.下载解压 apache-maven-3.6.1.rar 既安装完成


rar包地址


链接:https://pan.baidu.com/s/1WxMndyaHwW8URRLjbw3gtQ

提取码:5200

2.配置环境变量 MAVEN_HOME 为安装路径的bin目录


3.配置本地仓库:修改 conf/settings.xml 中的 为一个指定目录


6de278e6d6694ce5bb08e7e842b7e74b.png


4.配置阿里云私服:修改 conf/settings.xml 中的 标签,为其添加如下子标签:


<mirror>  
<id>alimaven</id>  
<name>aliyun maven</name>  
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>          
</mirror>


8ec4f2997fb246878c34ecd6d122b7c6.png



三、Maven的基本使用


1、Maven常用命令


compile :编译(mvn compile)


会生成target文件

clean:清理(mvn clean)


会删除掉target文件夹

test:测试(mvn test)


运行test文件里的java程序

package:打包(mvn package)


把项目打成jar包保存在本地仓库

install:安装(mvn install)


2、Maven生命周期


Maven 构建项目生命周期描述的是一次构建过程经历经历了多少个事件


Maven 对项目构建的生命周期划分为3套


clean:清理工作


default:核心工作,例如编译,测试,打包,安装等


site:产生报告,发布站点等


12c3b7f3f8814309a195c64f051d4445.png


四、IDEA配置Maven


1、选择 IDEA中 File --> Settings


34e8d716411043c08c7ffba9fbba23de.png


2、搜索 maven


92ba0822ed0b46e1ae72df8a17d3a45b.png


3、设置 IDEA 使用本地安装的 Maven,并修改配置文件路径


d79b274929334152a6d38be91e2d1be3.png


4、Maven坐标


什么是坐标?


Maven 中的坐标是资源的唯一标识


使用坐标来定义项目或引入项目中需要的依赖


Maven 坐标主要组成


groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.itheima)


artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)


version:定义当前项目版本号


五、IDEA创建Maven项目


1、创建模块,选择Maven,点击Next


0a2653c851af460fa595bd959398a8f1.png2d65d23f6d4748949b924e4057485923.png6de278e6d6694ce5bb08e7e842b7e74b.png8ec4f2997fb246878c34ecd6d122b7c6.png


2、填写模块名称,坐标信息,点击finish,创建完成


12c3b7f3f8814309a195c64f051d4445.png


3、编写 HelloWorld,并运行


0a2653c851af460fa595bd959398a8f1.png


六、IDEA中导入Maven项目


1、选择右侧Maven面板,点击 + 号


0a2653c851af460fa595bd959398a8f1.png2d65d23f6d4748949b924e4057485923.png


2、选中对应项目的pom.xml文件,双击即可


6de278e6d6694ce5bb08e7e842b7e74b.png


3、如果没有Maven面板,选择设置


View —>Appearance —> Tool Window Bars


七、IDEA中配置 Maven-Helper 插件


1、选择 IDEA中 File --> Settings


8ec4f2997fb246878c34ecd6d122b7c6.png


2、选择 Plugins


12c3b7f3f8814309a195c64f051d4445.png


3、搜索 Maven,选择第一个 Maven Helper,点击Install安装,弹出面板中点击Accept


34e8d716411043c08c7ffba9fbba23de.png


4、重启 IDEA


注意:如果在Plugins中搜索依赖要是搜不到的话,点击Plugins的轮齿设置,选择Http Proxy Settings然后No proxy—>Check connection—>在弹出的对话框内输入http://plugins.jetbrains.com/ —>Check connection—>ok—>重新打开setting设置重新搜索,问题解决

八、依赖管理


1、手写方式


(1)在 pom.xml 中编写 标签


(2)在 标签中 使用 引入坐标


(3)定义坐标的 groupId,artifactId,version


(4)点击刷新按钮,使坐标生效


0a2653c851af460fa595bd959398a8f1.png


2、使用快捷键alt + insert


(1)在 pom.xml 中 按 alt + insert,选择 Dependency


(2)在弹出的面板中搜索对应坐标,然后双击选中对应坐标


(3)点击刷新按钮,使坐标生效


2d65d23f6d4748949b924e4057485923.png6de278e6d6694ce5bb08e7e842b7e74b.png


3、设置依赖刷新快捷键


(1)选择 IDEA中 File --> Settings


(2)在弹出的面板中找到 Build Tools


0a2653c851af460fa595bd959398a8f1.png


(3)选择 Any changes,点击 ok 即可生效


2d65d23f6d4748949b924e4057485923.png


(4)依赖范围


 6de278e6d6694ce5bb08e7e842b7e74b.png


相关文章
|
Java Maven 开发工具
maven基础篇(四)
maven基础篇
173 1
|
XML Java 应用服务中间件
maven基础篇(三)
maven基础篇
179 1
|
XML 存储 Java
Maven基础学习——依赖配置(1):配置同一项目下的三个工程
选择Maven后直接选择下一步(注意这里不需要进行任何操作,不用搜索quickstart,直接点击下一步即可)
250 0
Maven基础学习——依赖配置(1):配置同一项目下的三个工程
|
Java 应用服务中间件 Maven
Maven基础学习——tomcat插件配置(含web工程配置)
Maven基础学习——tomcat插件配置(含web工程配置)
1615 0
Maven基础学习——tomcat插件配置(含web工程配置)
|
JavaScript Java Maven
|
存储 IDE Java
|
存储 JavaScript Java
Maven 基础
Maven 基础
146 0
Maven 基础
|
存储 IDE 前端开发
Maven基础
Maven基础
135 0
Maven基础
|
存储 IDE 前端开发
Maven基础
Maven基础
100 0
Maven基础
|
Java Linux Maven
Linux java基础环境搭建 ->nexus maven私服
Linux java基础环境搭建 ->nexus maven私服
138 0