目录
1.Maven简介
Maven是Apache软件基金会的一个开源项目,是一个优秀的项目构建工具,它用来帮助开发者管理项目中的jar,以及jar之间的依赖关系、完成项目的编译、测试、打包和发布等工作。
Maven中的概念
pom(Project Object Model 项目对象模型)
Maven 管理的项目的根目录下都有一个 pom.xml 文件。
pom.xml 文件指示 Maven 如何工作。
在 pom.xml 文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、 项目依赖的 jar、插件、编译选项等。
一旦在 pom.xml 文件中配置了所依赖的 jar,Maven会自动从构件仓库中下载相应的构件。
坐标
Maven 给每个jar 定义了唯一的标志,这个在 Maven中叫做项目的坐标,通过这个坐标可以找到你需要用到的任何版本的 jar包。
groupId、artifactId、packaging、version 的组合被称为项目的坐标,它们形成了项目的唯一标识,Maven 通过坐标来精确定位构件。其中 groupId、artifactId、version 是必须的,且这三项的值必须唯一,packaging 是可选的(默认为 jar)。
仓库
中央仓库全球共享,先将 jar 从中央仓库下载到本地仓库,然后在项目中引用本地仓库的 jar.

中央仓库:官方提供的,访问速度慢
中央仓库镜像:在全球各地对中央层库进行备份(例如阿里云),国内访问速度慢快
本地仓库:在程序员电脑上的仓库,第一次使用时从官方下载到本地,以后从本地直接引用即可
2.Maven开发环境搭建
前提: 安装jdk
Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通畅。
2.1下载Maven服务器
Maven 官网:http:// maven .apache. org

点击download进行下载:

2.2安装,配置Maven
点击下载二进制的 apache-maven -3.6.0-bin.zip 进行解压,"然后在系统环境中配置环境变量,在path中配置到bin目录,配置成功后输入命令mvn -version查看版本如下图:

表示Maven环境配置成功。
1.配置本地仓库地址
在Maven下载后,为了将下载的jar存储到我们指定的仓库中,我们需要在Maven的服务器解压的文件中找到conf文件夹下的settings.xml文件进行修改,如下图:


注意:用浏览器打开settings是无法进行修改的,建议下载一个Notepad++
下载地址:https://notepad-plus.en.softonic.com/download
官网下不了在网盘也有一份:链接:https://pan.baidu.com/s/1yiPcbWSIgYRPiSEjMNlvFg
提取码:i044
用Notepad++打开settings:找到

将最后的**-->** 剪切到上图输入键的地方,再将<localRepository>/path/to/local/repo </localRepository>中的**/path/to/local/repo** 修改成本地仓库的地址(在D盘中新建一个localRepository文件,复制此文件的地址替换掉**/path/to/local/repo**)
如下图:

2.配置阿里云镜像地址
还是在settings文件中,找到mirrors

再将以下文字复制到上图输入框的位置:
<mirror>
<id>aliMaven </id>
<name>aliyun Maven </name>
<url>http://Maven.aliyun.com/nexus/content/groups/public/\</url>
<mirrorOf>central</mirrorOf>
</mirror>
如下图:

阿里云镜像仓库就配置好了
2.3在idea中配置maven


修改Maven home path(因idea版本不同名字可能不同)

点击OK后,再修改下面两项:


点击确定再idea中的配置就完成了。
2.4在idea中创建maven项目
在File点击new中的project:


3.pom.xml配置
1.项目基本信息
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>mavenPro</artifactId>
<version>1.0-SNAPSHOT</version>
2.依赖信息
<dependencies>
<!--mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.16</version>
</dependency>
</dependencies>
Maven 仓库官网(http://mvnrepository.com/)如下图所示:
3.构建信息
<build>...</build>
4.Maven命令

Maven 常用命令
clean 删除编译的 target
compile 编译
package 打包
5.打包JavaSE项目案例
添加打包依赖
<build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>启动类地址</mainClass> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> </manifest> </archive> <classesDirectory> </classesDirectory> </configuration> </plugin> </plugins> </pluginManagement> </build>
执行maven命令

生成jar

复制出jar包到桌面,命令行进入到桌面
Java -jar jar包名称