• maven基础学习


    项目结构

    src
         -main
              -java
                   -package
         -test
              -java
                   -package
         -resources

    maven常用命令

    mvn -v     查看maven版本
    compile     编译
    test     测试
    package     打包
    clean     删除target
    install     安装jar包到本地仓库

    创建目录的两种方式

    1、archetype:generate 按照提示进行选择
    2、archetype:generate -DgroupId=组织名,公司网址的反写+项目名
                                            -DartifactId=项目名-模块名
                                            -Dversion=版本号
                                      -Dpackage=代码所存在的包名
    坐标
         构件
    仓库
         本地仓库和远程仓库
    镜像仓库

    完整的项目构件过程

         清理、编译、测试、打包、集成、集成测试、验证、部署

    maven生命周期

    ( clean、compile、test、package、install )
    clean     清理项目
    default     构建项目(最核心):compile、test、package、install
    site     生成项目站点

    pom.xml

         maven项目的核心管理文件,用于项目描述、组织管理、依赖管理和构件信息的管理
     
     
    项目中要运用某个框架,就需要把该框架的jar包引入到项目的classpath中,这样项目就可以使用该框架中封装的方法

    maven提供3种classpath

    1、编译
    2、测试
    3、运行

    scope依赖范围

    compile:编译,默认的范围,编译测试运行都有效
    provided:测试和编译时有效
    runtime:测试和运行时有效
    test:测试,只在测试时有效
    system:测试和编译时有效,可移植性差,与本机相关联
    import:导入的范围,只使用在dependencyManagement中,表示从其他的pom中导入dependency的配置
     

    依赖具有传递性  假设B项目依赖A项目,C项目又依赖B项目,那么在C项目中运行compile时,在引进B项目的同时,自动就把A项目也引进来了 

    如果不想将A项目导入的话,可以使用exclusions下设置exclusion,然后将A项目的坐标添加即可
     
    依赖冲突
    1.短路优先
    2.路径相同,则谁先声明,依赖谁

    聚合

    如果项目D依赖项目C,项目C依赖项目B,项目B依赖项目A,我们需要一个个安装这项项目,在Maven中有一种方式可以将多个项目一次性安装,这就是聚合的概念。简单讲就是,需要人工多次操作的,只要MAVEN能理解,一次性告诉他,他就能帮我们做这件单调烦人的事情了。——使用<modules></modules>这个标签

    继承

    多次使用到的依赖,比如:单元测试,没有必要在所有的项目中都引用一下,此时就可以采用继承的方式来实现,先来一个父级的POM.XML然后再继承此POM.XML

    packaging 改为pom

    dependencyManagement 中并不提取依赖
    property中定义了unit版本号,之后可以引用

    父类parent中的main和test没有意义,可以删除

  • 相关阅读:
    visual studio 2019 企业版下载
    对IT战略的认识
    投融资,你了解吗?
    一品投资农副产品电商平台工作内容
    高明的决策和投资远比低效的勤奋更重要
    随笔
    思维方式的不同
    公司经营问题探讨
    盘点海口最好吃的西餐厅top10
    羽毛球运动技巧
  • 原文地址:https://www.cnblogs.com/summer-sun/p/5547168.html
Copyright © 2020-2023  润新知