zoukankan      html  css  js  c++  java
  • Maven3核心技术(笔记三)

    第一节:Maven仓库概念

    Maven 远程仓库配置文件:
    $M2_HOME/lib/maven-model-builder-3.3.3.jar

    文件:orgapachemavenmodelpom-4.0.0.xml
    <repositories>
      <repository>
        <id> central </id>
        <name> Central Repository </name>
        <url> https://repo.maven.apache.org/maven2 </url>
        <layout> default </layout>
        <snapshots>
          <enabled> false </enabled>
        </snapshots>
      </repository>
    </repositories>

    Maven需要下载的依赖包都是从这里下载得到的<url> https://repo.maven.apache.org/maven2 </url>。

    第二节:Maven依赖特性

     依赖传递:

    user-service --->   Spring-core ---> Commons-logging

    我们只需要考虑Commons-logging就可以了,中间的Spring-core依赖,maven会帮我们自动考虑到的。

    依赖选择:

    maven的依赖选择是如何选择的??

    答:最短路径原则和最先声明原则

    (一)A-->B-->C-->X

        和

      A-->D-->X

      这就是最短路径原则,maven会自动帮助我们找到最短的那个,这里maven会使用A-->D-->X这个短的路径

    (二)A-->B-->X

        和

      A-->C-->X 

      这就是最先声明原则,maven会自动帮助我们找到最先声明的那个,这里maven会使用A-->B-->X这个最先声明的路径

    第三节:Maven聚合与继承特征

    第四节:Maven依赖范围

     classpath 分为三种:

        编译 classpath ,

        测试 classpath ,

        运行 classpath

    Scope 选项如下:

        Compile:编译依赖范围。默认就是 compile。在编译,测试,运行都有效;

        Test:测试依赖范围。仅测试有效; 例如 JUnit;

        Provided:已提供依赖范围。编译,测试有效,运行时候无效。例如 servlet-api。

        System:系统依赖范围。(了解即可)使用 system 范围的依赖必须通过 sytemPath 指定依赖文件的路径。

        Import:导入依赖范围。(了解即可)使用 dependencyManagement 时候,可以导入依赖配置。

  • 相关阅读:
    uva 10491 Cows and Cars
    uva 10910 Marks Distribution
    uva 11029 Leading and Trailing
    手算整数的平方根
    uva 10375 Choose and divide
    uva 10056 What is the Probability?
    uva 11027 Palindromic Permutation
    uva 10023 Square root
    Ural(Timus) 1081. Binary Lexicographic Sequence
    扩展欧几里得(求解线性方程)
  • 原文地址:https://www.cnblogs.com/wishwzp/p/6867694.html
Copyright © 2011-2022 走看看