一、Maven模型结构

jar包都来自本地的仓库

一直在Resolving Maven 卡住了 maven resp_maven

仓库种类:

中央仓库:https://repo1.maven.org/maven2/

一直在Resolving Maven 卡住了 maven resp_maven_02

二、Maven安装

一直在Resolving Maven 卡住了 maven resp_maven_03


配置失败解决方案:

一直在Resolving Maven 卡住了 maven resp_maven_04


JAVA_HOME应该配置到jdk文件目录,path中再配置对应的bin目录,改为%JAVA_HOME%\bin。

一直在Resolving Maven 卡住了 maven resp_web项目_05


一直在Resolving Maven 卡住了 maven resp_maven_06


然后配置成功

配置本地仓库:

一直在Resolving Maven 卡住了 maven resp_jar包_07


新建mvn_resp文件夹,当作本地仓库然后把路径复制到上图的路径

一直在Resolving Maven 卡住了 maven resp_java_08


一直在Resolving Maven 卡住了 maven resp_web项目_09

配置阿里云私服

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

</mirror>

一直在Resolving Maven 卡住了 maven resp_maven_10

三、Maven基本使用

1.编译 mvn compile

在maven项目文件夹中 ,打开终端

输入 mvn compile 自动从阿里云下载jar包到本地仓库,

如果报错mvn无法识别,重启电脑可解决。

下图下载成功,项目文件夹中生成target文件

一直在Resolving Maven 卡住了 maven resp_jar包_11


一直在Resolving Maven 卡住了 maven resp_maven_12

2. mvn clean

同样在终端输入mvn clean ,删除target目录

3. mvn package

同样在终端输入mvn package 项目打成jar包,路径中不能有特殊字符
生成的包在target文件中

4. mvn test

执行test文件

5.mvn install

将项目安装到本地仓库

四、Maven生命周期

一直在Resolving Maven 卡住了 maven resp_java_13


执行周期内 install ,前边的 compile test等都会执行

五、IDEA配置Maven

项目中点击settings,搜索maven,将本地安装的maven配置到项目

一直在Resolving Maven 卡住了 maven resp_web项目_14

六、Maven 坐标详解

一直在Resolving Maven 卡住了 maven resp_jar包_15

新建maven项目步骤:

一直在Resolving Maven 卡住了 maven resp_intellij-idea_16

一直在Resolving Maven 卡住了 maven resp_intellij-idea_17


一直在Resolving Maven 卡住了 maven resp_intellij-idea_18


一直在Resolving Maven 卡住了 maven resp_web项目_19


一直在Resolving Maven 卡住了 maven resp_web项目_20

IDEA导入maven项目步骤:

一直在Resolving Maven 卡住了 maven resp_java_21

Maven 实用插件:

一直在Resolving Maven 卡住了 maven resp_web项目_22


maven生命周期指令可以直接双击执行

一直在Resolving Maven 卡住了 maven resp_jar包_23


一直在Resolving Maven 卡住了 maven resp_intellij-idea_24

七、依赖管理

一直在Resolving Maven 卡住了 maven resp_maven_25


用过的jar包,会自动补全名称,如果dependency 没有自动提示,百度搜 包名+maven ,例如mysql maven, 找到对应的坐标代码。

一直在Resolving Maven 卡住了 maven resp_java_26


然后点击下载

一直在Resolving Maven 卡住了 maven resp_maven_27


修改自动生效,不需要点下载了

一直在Resolving Maven 卡住了 maven resp_intellij-idea_28

如果本地仓库有jar包,快捷键
alt+insert

一直在Resolving Maven 卡住了 maven resp_maven_29


一直在Resolving Maven 卡住了 maven resp_intellij-idea_30

依赖范围

编译是java文件夹的内容
测试时test文件夹的内容

一直在Resolving Maven 卡住了 maven resp_jar包_31

provide 范围,在web项目打包时, 范围时provide 的包,不会打包到 web项目的lib文件夹里。
lib文件存放web项目依赖的包