zoukankan      html  css  js  c++  java
  • MAVEN 配置和基本使用

    Maven 安装配置

    1. 解压 apache-maven-3.6.1.rar 既安装完成

    2. 配置环境变量 MAVEN_HOME 为安装路径的 bin 目录

      在 Path 下添加 %MAVEN_HOME%\bin 后确定关闭

      CMD 中输入 mvn -version 检验

    3. 配置本地仓库:修改 conf/setting.xml 中的 <localRepositoty> 为一个指定的目录

      默认在 C盘,我这里修改为在 maven 解压文件夹下新建的 mvn_repo

    4. 配置阿里云私服:修改 conf/setting.xml 中的 <mirrors> 标签,为其添加如下子标签:

    <mirrors>
        <mirror>
          <id>alimaven</id>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
          <mirrorOf>central</mirrorOf>        
        </mirror>
    </mirrors>
    
    以下是在项目中 pom.xml 文件中添加
    <repositories>  
            <repository>  
                <id>alimaven</id>  
                <name>aliyun maven</name>  
                <url>http://maven.aliyun.com/nexus/content/groups/public/</url>  
                <releases>  
                    <enabled>true</enabled>  
                </releases>  
                <snapshots>  
                    <enabled>false</enabled>  
                </snapshots>  
            </repository>  
    </repositories>  
    

    Maven 基本使用

    Maven 常用命令

    • complie:编译
    • clean:清理
    • test:测试
    • package:打包,注意文件夹命名最好没用 & 之类字符,防止错误
    • install:安装

    Maven 生命周期

    • Maven 构建项目生命周期描述的是一次构建过程经历经历了多少个事件
    • Maven 对项目构建的生命周期分为三套
      • clean:清理工作
      • default:核心工作,例如编译,测试,打包,安装等
      • site:产生报告,发布站点等(不是很常用)

    当我们执行 install(安装)命令时,它会先执行 compile命令,再执行 test 命令,再执行 package 命令,最后执行 install 命令。

    当我们执行 package (打包)命令时,它会先执行 compile 命令,再执行 test 命令,最后执行 package 命令。

    默认的生命周期也有对应的很多命令,其他的一般都不会使用,我们只关注常用的:

    image-20210726173619353

    IDEA 使用 Maven

    开发中我们肯定会在高级开发工具中使用Maven管理项目,而我们常用的高级开发工具是IDEA,所以接下来我们会讲解Maven在IDEA中的使用。

    IDEA 配置 Maven 环境

    • 在 IDEA 中 File --> Settings --> 搜索 maven --> 设置 IDEA 使用本地安装的 Maven,并修改配置文件路径

    Maven 坐标详解

    什么是坐标?

    • Maven 中的坐标是资源的唯一标识
    • 使用坐标来定义项目或引入项目中需要的依赖

    Maven 坐标主要组成

    • groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.itheima)
    • artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)
    • version:定义当前项目版本号

    如下图就是使用坐标表示一个项目:

    注意:

    • 上面所说的资源可以是插件、依赖、当前项目。
    • 我们的项目如果被其他的项目依赖时,也是需要坐标来引入的。

    推荐安装 Maven Helper 来方便选中项目右键进行 Maven 相关命令操作

    依赖管理

    使用坐标引入jar包

    使用坐标引入jar包的步骤:

    • 在项目的 pom.xml 中编写 <dependencies> 标签

    • 在 <dependencies> 标签中 使用 <dependency> 引入坐标

    • 定义坐标的 groupId,artifactId,version

      image-20210726193105765
    • 点击刷新按钮,使坐标生效

      image-20210726193121384

    注意:

    快捷方式导入jar包的坐标:

    每次需要引入jar包,都去对应的网站进行搜索是比较麻烦的,接下来给大家介绍一种快捷引入坐标的方式

    • 在 pom.xml 中 按 alt + insert,选择 Dependency

      image-20210726193603724
    • 在弹出的面板中搜索对应坐标,然后双击选中对应坐标

    • 点击刷新按钮,使坐标生效

    关于自动导入设置:

    上面每次操作都需要点击刷新按钮,让引入的坐标生效。当然我们也可以通过设置让其自动完成

    • 选择 File --> Settings --> 在弹出的面板中找到 Build Tools --> 选择 Any changes,点击 ok 即可生效

    依赖范围

    通过设置坐标的依赖范围(scope),可以设置 对应jar包的作用范围:编译环境、测试环境、运行环境。

    如下图所示给 junit 依赖通过 scope 标签指定依赖的作用范围。 那么这个依赖就只能作用在测试环境,其他环境下不能使用。

    image-20210726194703845

    那么 scope 都可以有哪些取值呢?

    依赖范围 编译classpath 测试classpath 运行classpath 例子
    compile Y Y Y logback
    test - Y - Junit
    provided Y Y - servlet-api
    runtime - Y Y jdbc驱动
    system Y Y - 存储在本地的jar包
    • compile :作用于编译环境、测试环境、运行环境。
    • test : 作用于测试环境。典型的就是Junit坐标,以后使用Junit时,都会将scope指定为该值
    • provided :作用于编译环境、测试环境。我们后面会学习 servlet-api ,在使用它时,必须将 scope 设置为该值,不然运行时就会报错
    • runtime : 作用于测试环境、运行环境。jdbc驱动一般将 scope 设置为该值,当然不设置也没有任何问题

    注意:

    • 如果引入坐标不指定 scope 标签时,默认就是 compile 值。以后大部分jar包都是使用默认值。

    The desire of his soul is the prophecy of his fate
    你灵魂的欲望,是你命运的先知。

  • 相关阅读:
    MySQL基础(一):检索数据
    Go基础(九):并发
    Go基础(八):反射
    Go基础(七):接口
    Go基础(六):方法
    Go基础(五):结构体
    Go基础(四):流程控制和函数
    Go基础(三):内置基础类型和一些技巧
    Go基础(二):变量和常量
    Go基础(一):命令行操作
  • 原文地址:https://www.cnblogs.com/RioTian/p/15638149.html
Copyright © 2011-2022 走看看