zoukankan      html  css  js  c++  java
  • 在pom.xml中引入jar包坐标的依赖范围

    A依赖B,需要在Apom.xml文件中添加B的坐标,添加坐标时需要指定依赖范围,依赖范围包括:

    • compile:编译范围,指A在编译时依赖B,此范围为默认依赖范围。编译范围的依赖会用在编译、测试、运行,由于运行时需要所以编译范围的依赖会被打包。
    •  providedprovided依赖只有在当JDK或者一个容器已提供该依赖之后才使用, provided依赖在编译和测试时需要,在运行时不需要,比如:servlet apitomcat容器提供。(一般使用provided)
    •   runtime:runtime依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如:jdbc的驱动包。由于运行时需要所以runtime范围的依赖会被打包。
    •  testtest范围依赖 在编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用,比如:junit。由于运行时不需要所以test范围依赖不会被打包。
    •  systemsystem范围依赖与provided类似,但是你必须显式的提供一个对于本地系统中JAR文件的路径,需要指定systemPath磁盘路径,system依赖不推荐使用。

      

    maven-web工程中测试各各scop

    测试总结:

    • 默认引入 jar------- compile 【默认范围 可以不写】(编译、测试、运行 都有效 )
    • servlet-api jsp-api ------- provided (编译、测试 有效, 运行时无效 防止和tomcatjar冲突)
    • jdbc驱动jar---- runtime (测试、运行 有效 )
    •  junit ----- test (测试有效)

    依赖范围由强到弱的顺序是:compile>provided>runtime>test

  • 相关阅读:
    LC 377. Combination Sum IV
    LC 718. Maximum Length of Repeated Subarray
    使用 Synchronized 关键字
    线程的基本概念
    谈谈 JAVA 的对象序列化
    JAVA 注解的基本原理
    基于 CGLIB 库的动态代理机制
    基于 JDK 的动态代理机制
    反射的基本原理
    泛型的基本原理
  • 原文地址:https://www.cnblogs.com/wyhluckdog/p/10279330.html
Copyright © 2011-2022 走看看