首页 > 其他分享 >Maven

Maven

时间:2022-12-26 20:13:09浏览次数:56  
标签:maven --- java 仓库 Maven 测试

Maven核心概念:

  • POM:

    • 一个文件pom.xml,pom(Project Object Modle)项目对象模型
    • maven把一个项目当作一个模型使用,控制maven构建项目的过程,管理jar依赖,通过pom文件实现
  • 约定的目录结构:

    • maven项目的目录和文件的位置都是规定的

    • maven中约定的目录结构:

      • Hello/

        ​ ---/src

        ​ ----/main #放置主程序java代码和配置文件

        ​ -----/java #放置程序包和包中的java文件

        ​ -----/resources #放置的java程序中要使用的配置文件

        ​ ----/test #放测试程序代码和文件(可以没有)

        ​ -----/java #测试的java程序包和包中的java文件

        ​ -----/resources #测试的java程序中要使用的配置文件

        ​ ---/pom.xml

      • Hello

        ​ |---src

        ​ |---|---main

        ​ |---|---|---java

        ​ |---|---|---resources

        ​ |---|---test

        ​ |---|---|---java

        ​ |---|---|---resources

        ​ |---pop.xml

  • 坐标:

    • 是一个唯一的字符串,用来表示资源
  • 依赖管理

    • 管理项目可以使用的jar文件
  • 仓库管理

    • 资源存放的位置
  • 生命周期

    • maven工具构建项目的过程,就是生命周期
  • 插件和目标

    • 执行maven构建的时候用的工具是插件
  • 继承

  • 聚合

Maven工具配置:

  • 子目录
    • bin:mvn.cmd执行程序
    • conf:settings.xml,Maven工具本身的配置文件
  • 配置环境变量
    • M2_HOME=D:\setTest\apache-maven-3.8.4
    • 在PATH中配置%M2_HOME%\bin

Maven的作用

  • maven:是一个项目的构建工具
  • 作用:
    • 1,管理依赖:jar的管理,下载,版本
    • 2,构建项目,完成代码的编译,测试,打包,部署
  • 使用方式:
    • 1,独立使用maven:命令行使用完成代码的编译,测试,打包等功能
    • 2,结合开发工具使用:在idea中使用maven,简单快捷

仓库

  • 仓库是什么:
    • 存放maven使用的插件(各种jar),和项目使用的jar(第三方仓库)
  • 仓库的分类?
    • 本地仓库:个人计算机上的文件夹,存放各种jar
    • 远程仓库:在互联网上,使用网络才能使用的仓库
      • 中央仓库:最权威,所有开发人员共享使用的集中仓库
      • 中央仓库的镜像:中央仓库的备份
      • 私服:公司内部,局域网使用,不对外开放
  • 仓库的使用:
    • 使用A.jar---->首先查找本地仓库---->有,则返回---->无,查私服----->无,查镜像---->中央仓库

pom文件

  • maven的灵魂(projiect object modle),maven把一个项目当作一个模型使用,控制maven构建项目的过程,管理jar依赖,通过pom文件实现,
  • 基本信息
    • modleVersion:Maven的模型版本无论2还是3,统一是4.0.0
    • 坐标:(groupID+artifactID+version)
      • groupID:组织的id,一般是域名倒写/域名倒写加项目名
        • 倒写如:com.baidu
        • com.baidu.appolo
      • artifactId:自定义项目名称,也是模块名称对应groupId中项目的子项目
      • version:项目的版本号如果在开发中,是不稳定版本在版本号后面带-SNAPSHOT
    • packageing:项目压缩文件扩展名,默认是jar
    • dependencies和dependency:项目要使用的各种资源说明,相当于java中的import
    • properties:设置属性
    • build:maven在进行项目构建时,配置信息,如指定编译java使用的jdk的版本号等

Maven的生命周期,Maven的命令,Maven的插件

  • Maven的生命周期:maven构建项目的过程,清理,编译,测试,报告,打包,安装,部署
  • Maven的命令:Maven可以独立使用,通过命令,来完成maven生命周期的执行(maven每次执行下一阶段的命令时,都会把前一阶段的命令执行一次)
    • maven可以使用命令,完成项目的清理,编译,测试
      • mvn clean 清理,会删除原来编译和测试的目录
      • mvn compile 编译主程序
      • mvn test-compile 编译测试的主程序
      • mvn test 测试,会生成一个目录surefire-reports,保存测试结果
      • mvn package 打包主程序(会编译,编译测试,测试,并按照pom.xml中的配置把主程序打包成jar或war包)
      • mvn install 安装主程序(会把本工程打包,并按照本工程的坐标保存到本地仓库)
      • mvn depoly 部署主程序(会把本工程打包,并按照本工程的坐标保存到本地仓库,并且还会保存到私服仓库中,还会自动把项目部署到web容器中)
  • Maven的插件:maven执行命令时,真正完成功能的是插件,插件就是一些jar文件,一些类

单元测试

  • junit,junit是一个专门测试的框架(工具)

    • junit测试的内容:测试的是类中的方法,每一个方法都是独立测试的
    • 方法是测试的基本单位(单元),junit就是测试方法的
  • maven就是借助单元测试来批量测试类中的大量方法是否符合预期的

  • 怎么使用?

    • 加入依赖,在pom中添加单元测试的依赖

    • <!-- https://mvnrepository.com/artifact/junit/junit -->
      <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.12</version>
          <scope>test</scope>
      </dependency>
      

标签:maven,---,java,仓库,Maven,测试
From: https://www.cnblogs.com/RepublicLine/p/17006731.html

相关文章