1. maven教程

1. 使用Maven的好处

  1. jar包的管理方便
  2. 一键构建,从编译-----测试-----运行----打包-------部署整个过程都交给maven管理。

2. Maven的安装

2.1下载

百度搜索maven
在这里插入图片描述
进入官网选择download
在这里插入图片描述
找到Binary zip archive apache-maven-3.6.2-bin.zip,点击下载
在这里插入图片描述

2.2 安装

解压到不含有空格或中文的路径下,看它的结构
在这里插入图片描述
配置环境变量
从控制面板->所有控制面板项->系统->高级系统设置->高级->环境变量
在这里插入图片描述
首先你的电脑得先安装java并且配置java环境变量,这里已经配置好了。

配置MAVEN_HOME变量,变量值就是你的maven安装路径。
在这里插入图片描述
将 %MAVEN_HOME%/bin 加入环境变量 path
在这里插入图片描述
运行mvn -v 看看是否安装成功,看到这个说明安装成功。
在这里插入图片描述

3. Maven的仓库与配置

3.1 Maven的仓库

在这里插入图片描述

  • 本地仓库:本地存放jar包的目录。
  • 远程仓库(私服):私人搭建的服务器。一般在企业内部局域网中使用。
  • 中央仓库:maven内置了一个远程仓库的地址,它就是中央仓库,访问的url可以从D:\Tools\apache-maven-3.6.2\lib\maven-model-builder-3.6.2.jar\org\apache\maven\model\pom-4.0.0.xml中找到https://repo.maven.apache.org/maven2
    在这里插入图片描述
    在这里插入图片描述

Maven在查找jar的时遵循什么样的顺序呢?

  • 优先查找本地;
  • 本地找不到,则从私服上查找,找到后下载到本地仓库;
  • 私服上找不到,则从中央仓库查找,找到后下载到私服,最后下载到本地仓库;

最终maven都会把jar下载到本地仓库,maven工程再引用本地仓库的jar包。

3.2 本地仓库配置

打开安装路径下conf/settings.xml,加入E://9_Repository//repository
在这里插入图片描述

3.3 远程仓库的配置

国内因为墙的原因,下载jar包比较慢,可以配置镜像,如下

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

在这里插入图片描述

4. Maven工程的标准目录结构

在这里插入图片描述
目录结构规范
在这里插入图片描述

5. Maven命令

  1. clear
    clean是maven工程的清理命令,执行 clean会删除target目录及其目录下所有内容。
  2. compile
    compile是maven工程的编译命令,作用是将src/main/java下的java源文件编译为class文件并输出到target下的classes目录下。
  3. test
    test是maven工程的测试命令 mvn test,会执行src/test/java下的单元测试类。会编译java源码,同时也编译测试目录下的java源码,接着会运行测试类里的测试方法。
  4. package
    package是maven工程的打包命令, 对于java工程执行package打成jar包,对于web工程打成war包,工程目录下执行 mvn package。
  5. Install
    install是maven工程的安装命令,执行install将maven打成jar包或war包发布到本地仓库。

当后面的命令执行时,前面的操作过程也都会自动执行。

  1. 三套生命周期

Maven对项目构建过程分为三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”,这三套生命周期分别是:

1.Clean Lifecycle: 在进行真正的构建之前进行一些清理工作。
2.Default Lifecycle: 构建的核心部分:编译、测试、打包、部署等等。
3.Site Lifecycle: 生成项目报告、站点、发布站点。

每一个阶段都有一个对应的命令,且有相应的插件来支持命令的运行。

注:属于同一个指令周期内的指令,当后面的命令执行时,前面的命令会自动执行。

6. 使用eclipse配置maven

6.1 配置maven插件,高版本自带

在这里插入图片描述
在这里插入图片描述

6.2 Eclipse中配置仓库位置

在这里插入图片描述
在这里插入图片描述

6.3 构建索引

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.4 成功可看到仓库能展开

在这里插入图片描述

7. jar包作用范围scope属性

添加jar包的坐标时,还可以指定这个jar包将来的作用范围
依赖范围包括

  • compile:编译范围,A在编译时依赖B,此范围为默认依赖范围。编译范围的依赖会用在编译、测试、运行,由于运行时需要,所以编译范围的依赖会被打包。

  • provided:provided依赖只有在当JDK或者一个容器已提供该依赖之后才使用,provided依赖在编译和测试时需要,在运行时不需要,比如:servlet api被tomcat容器提供。

  • runtime: runtime依赖在运行和测试系统时候需要,但在编译的时候不需要,比如:jdbc的驱动包。由于运行时需要,所以runtime范围的依赖会被打包

  • test:test范围依赖 在编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用,比如:junit。由于运行时不需要,所以test范围依赖不会被打包。

  • system:system范围依赖与provided类似,但是你必须显式的提供一个对于本地系统中jar文件的路径,需要指定systemPath磁盘路径,system依赖不推荐使用。
    在这里插入图片描述

发布了97 篇原创文章 · 获赞 3 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_39530821/article/details/102882397