Maven从入门到放弃
Maven概述
- Maven是一个工具
- 提供了一套标准的项目结构
- 提供了一套标准的构建流程(编译, 测试, 打包, 发布)
- Maven 提供了一套简单的命令来操作这些工做, 也就是项目的构建
- 提供了一套依赖管理机制
- 使用第三方软件包的时候, jar包, 我们可以直接从Maven中央仓库种导入。
- 之前是 下载jar包, 复制jar包到我们自己创建的目录种, 再把Jar包加入到工作环境中(比较麻烦, 如果Jar包很多的话, 要下载, 并且要加入到工作环境中, 手动导入jar包很繁琐)
- Maven使用标准的坐标来配置各种依赖
- Maven 只需要一个简单的配置就可以导入jar包, 完成依赖管理
Maven 的配置
- 解压Maven的安装包
- 配置环境变量为MAVEN_HOME的bin目录
- 配置本地仓库
- 默认的仓库地址是 :C:\Users\Administrator.m2
- 去修改D:\apache-maven-3.5.4\conf里面的settings.xml中的 为一个指定的目录来当我们的本地仓库, 一般把本地仓库 放到我们的maven所在的目录.
- 配置阿里云私服
- 去修改D:\apache-maven-3.5.4\conf里面的settings.xml中的标签, 添加字段.
Maven的基本使用
- 常用命令
- compile: 编译
- clean: 清理
- test: 测试
- packet: 打包
- install: 安装
IDEA 配置MAVEN
- 选择File->Settings
- 搜索maven
- 设置IDEA使用我们安装的本地Maven, 并修改配置文件路径(里面已经指定好了我们本地仓库的路径, 以及阿里云镜像)以及我们自己安装仓库的路径
- 点击Apply再点击Ok
Maven坐标
- 什么是坐标
- 是唯一资源标识
- 使用坐标来引入项目或者项目所需要的依赖
- 其实引入的就是一个引用, 该引用指向的是我们本地仓库中的jar包, 如果本地仓库没有, 就会从我们设置的镜像中去下载.
- jar包就是我们的项目打包后生成的
- Maven坐标的主要组成
- groupId: 表示当前项目所属的组织名称
- artifactId: 定义当前项目的名称(通常是模块名称, 如: com-test, goods-price)
- version: 定义当前项目的版本号
- 这三个标签, 就组成了一个项目的唯一标识
IDEA 创建Maven
- 点击右上角的Project Structure->modules-> + ->new module, 选择创建Maven项目.
- 填写模块名称, 坐标信息, 点击finish, 完成
- 编写代码, 并运行.
IDEA 导入Maven
- 选择右侧Maven面板, 点击 + 号
- 点击完 + 号后, 会出现一个选择地址栏, 我们可以选择我们要导入 Maven项目的地址
- 选择对应项目的 pom.xml 文件, 双击即可导入我们所需要的 Maven项目.
关于右侧Maven小标签(也就是Maven面板)找不到问题的解决办法
- View -> Appearance - > Tool Windows Bars 把这个选项勾选就可以出现
关于不小心把IDEA主菜单搞消失的解决办法
- 原因: 是因为我们点击了 View -> Appearance - > Main Menu, 把勾选状态给搞没了
- 解决: 两次shift, 在弹出来的框框里面输入 : View Appearence …
- 找到 Main Menu 这个选项, 把 OFF 改成 ON (点击一下就好)
依赖管理
- 就是在pom.xml文件中 写对应的项目的坐标, 把这些所需要的项目(依赖) 给引入进来
- 一般都是去Maven中央仓库去寻找我们所需要的依赖的jar包, 或者对应的坐标(本地仓库没有, 会从我们的镜像中下载)
- 在浏览器中搜索: 关键字(要导入的依赖) + Maven
-
使用坐标来导入 jar 包
- 在pom.xml文件中写 标签 (依赖们, 复数)
- 在该标签中再写入 < dependency>标签 (依赖)
- 在< dependency> 标签中, 写入坐标的唯一标识也就是
- < groupId> < artiafId> < servion> 这几个标签加入到< dependency> 中
- 点击 Maven 面板的 刷新按钮就可以引入对应的 jar 包
- 如果不想每次引入依赖都自己手动点击刷新, 我们可以设置每次引入依赖后自动刷新这个IDEA自带的功能
- 寻找: FIle -> Settings -> Build Execution那一栏 -> build tools
- 右侧就会出现, reload project after change(重新加载, 在项目修改后), 我们勾选 Any Change 就可以完成.
- 快速生成坐标模板
6. alt + insert
7. 选择 dependency template(依赖模板)
8. 就可以自动生成坐标模板 - 依赖范围标签(scope)
- 限制了当前坐标的生命周期, 也就是该依赖可以在那个阶段被使用到
- 比如: 编译阶段(这个是默认的阶段), 测试阶段(test), 运行阶段(running).
- 这个就不详细解释了
-
在 Maven 中央仓库来引入对应的依赖或者 jar 包
- 百度搜索: XXX依赖 Maven…