Maven学习 ---  常见变量解释 && 问题解决

1.< dependency> 元素定义了项目的相关依赖,其中有一些元素,各自的定义为:

  1. <groupId> : 项目或者组织的唯一标识,并且配置时生成路径也是由此生成的.如 <groupId>com.qmbb</groupId> 生成的相对路径为 com/qmbb   (生成的路径在本地的 ~./m2/repository 中)
  2. <artifactId> 项目的通用名称 (也会由此生成路径)
  3. <version> 项目的版本
  4. <packaging> 打包机制 如pom, jar, maven-plugin, ejb, war, ear, rar, par
  5. <name> && <url> pom提供的描述性的元素,和可阅读的名字 可不选
  6. <scope> 主要管理依赖的部署,现在有五个值
    • compile 缺省值,适用于所有阶段,会随着项目一起发布. 编译和打包的时候会将依赖存进去  (默认值)
      • 被依赖的Maven构件在compileruntimetest的时候都可以在classpath中找到
    • provided 类似于compile,期望JDK,容器或使用者会提供这个依赖 只能作用于编译和测试时,没有传递性
      • 被依赖的Maven构件在compiletest的时候都可以在classpath中找到,在runtime的时候由JDK容器提供
    • runtime 只在运行时使用, 如JDBC驱动,适用于运行和测试阶段
      • 被依赖的Maven构件在runtimetest的时候都可以在classpath中找到,在compile时不是必须的
    • test 只在测试时使用,用于编译和运行测试代码.不会随项目发布
      • 被依赖的Maven构件在test的时候可以在classpath中找到,在compile和runtime时不是必须的
    • system 类似于provided.需要显式提供包含依赖的jar,Maven不会在Repository中查找它
      • 被依赖的Maven构件在compiletest的时候都可以在classpath中找到,在runtime的时候必须显式JAR加入到classpath中
    • import 只使用在<dependencyManagement>中,表示从其它的pom中导入的<dependency>配置


2.maven的生命周期
  • 清除生命周期(删除整个构建目录,target目录)
    • mvn clean
  • 验证项目是否正确
    • validate
  • 编译项目的源代码
    • compile
  • 使用合适的单元测试框架运行测试。这些测试应该不需要代码被打包或发布 
    • test
  • 将编译好的代码打包成可分发的格式 ,如JAR,WAR,或者EAR 
    • package
  • 执行所有检查,验证包是有效的,符合质量规范 
    • verify
  • 安装包至本地仓库,以备本地的其它项目作为依赖使用 
    • install
  • 复制最终的包至远程仓库,共享给其它开发人员和项目(通常和一次正式的发布相关)
    • deploy


3. pom的文件结构
  • pom的模型版本
    •  <modelVersion>4.0.0</modelVersion>
  • 基本配置
  • build配置
  • 环境配置
  • 其他信息等


    4. 多模块聚合结构
    • maven3开始支持maven项目的多模块(multi-modules)结构.这样的Maven项目成为聚合项目.通常由一个父模块若干个子模块构成.
    • 父模块必须以pom为打包类型
    • 父模块的pom中的<modules> 必须给出所有的子模块
    • 其中的每一个modules都是一个Maven项目
    • 示例
      • <groupId>com.quanminbb</groupId>
        <artifactId>qmxbb-platform</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>pom</packaging>
        <modules>
            <module>modules</module>
            <module>webapps</module>
        </modules>



    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

    当前余额3.43前往充值 >
    需支付:10.00
    成就一亿技术人!
    领取后你会自动成为博主和红包主的粉丝 规则
    hope_wisdom
    发出的红包

    打赏作者

    叶孤心丶

    你的鼓励将是我创作的最大动力

    ¥1 ¥2 ¥4 ¥6 ¥10 ¥20
    扫码支付:¥1
    获取中
    扫码支付

    您的余额不足,请更换扫码支付或充值

    打赏作者

    实付
    使用余额支付
    点击重新获取
    扫码支付
    钱包余额 0

    抵扣说明:

    1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
    2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

    余额充值