-
Maven 简介
maven 是项目管理工具。(在某个编译器上创建的工程可以在任何其他编译器上执行)
提供了一套标准的项目结构。(src main java resource test)
提供了一套标准的构建流程(编译 测试 打包 下载)
提供了一套依赖管理机制。(下载依赖:本地仓库(磁盘)–私服(企业搭建)–中央仓库(maven提供)) -
Maven的安装配置
-
maven下载(官网):https://maven.apache.org/download.cgi
-
解压maven.rar 即安装完成。
-
配置环境变量 MAVEN_HOME 为安装路径的bin目录。(在任何路径下可以执行maven命令)
-
配置本地仓库:在maven安装目录的conf/setting.xml中修改localrepository
(创建本地仓库:E:\soft\javaweb\maven\repository;默认在C盘中:C:\Users\dell.m2\repository) -
配置阿里云私服:在maven安装目录的conf/setting.xml中添加子标签。(从阿里云仓库下载依赖的速度更快)
<mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
-
-
Maven的常用命令(好像没啥用)
- compile :编译。生成target目录。将Java文件编译生成.class文件。
- clean:清理。将生成的target目录删除。
- test:测试。执行工程下test目录下的代码。
- package:打包。将工程打包成jar。
- install:安装。将jar包下载到本地仓库中。
-
Maven 的生命周期(好像没啥用)
- 分为了三套生命周期:clean / default/ site
- 同一生命周期 执行后面的命令会自动执行前面的命令。例如:default生命周期包括:编译、测试、打包、安装。若执行安装命令会自动执行前面的命令。
-
在IDEA中配置MAVEN
- 全局配置注意maven配置的生效范围。
file -> new project setup -> setting for new project
在这个路径下设置maven的配置,对之后的创建的maven项目都有效。如果是导入老项目,首先需要修改maven环境。
- 全局配置注意maven配置的生效范围。
maven home path : 选择自己下载并解压的maven路径。
user setting file: 选择maven目录下的/conf/setting.xml文件。(这里配置了本地仓库路径+阿里云私服地址)
local repository:本地仓库会在选择好配置文件自动填入。
2. 设置参数 -DarchetypeCatalog=internal**
1. 目的:为了加快MAVEN构建项目工程。
2. 原因:
IDEA根据maven archetype的本质,是执行mvn archetype:generate命令,该命令执行时需要指定一个archetype-catalog.xml文件。
该命令的参数-DarchetypeCatalog,可选值为:remote(中央仓库),internal(私服),loca(本地仓库)l等,用来指定archetype-catalog.xml文件从哪里获取。
默认为remote,即从http://repo1.maven.org/maven2/archetype-catalog.xml路径下载archetype-catalog.xml文件。
默认情况下下载速度很慢,所以我们可以选择私服 or 自己下载到本地仓库
6. 导入maven项目
1. 把要导入的maven项目复制粘贴到IDEA的workspace中。
2. 选择右侧maven面板,点击+号。
3. 选中要导入项目的pom.xml文件,双击即可。
4. 如果没有maven面板:view -> appearance -> Tool Window Bars
7. 安装maven-helper插件。
可以debug
8. 导入依赖
1. 搜索,例如: 搜索 mysql maven
2. 已知本地仓库有:alt+insert
3. 设置修改即生效:file -> setting -> build -> build tools 选择any changes
9. 依赖范围(不太懂)
- 参考了黑马课程以及两位大佬的文章:
https://blog.csdn.net/qq_43012792/article/details/107217254
https://blog.csdn.net/qq_44785877/article/details/111669176