Maven依赖范围

先看看Maven依赖的配置

<dependencies>  
     <dependency>  
           <groupId>....</groupId>  
           <artifactId>......</artifactId>  
           <version>........</version>  
           <type>......</type>  
           <scope>....</scope>  
           <optional>...</optional>  
           <exclusions>  
                ..........  
           </exclusions>  
     </dependency>  
      ............  
</dependencies>  
当中:

groupId,artifactIdversion:依赖的基本坐标(坐标就不描写叙述了,上过学的都知道)

type: 依赖的类型,默认值是jar(知道有即可。非常少用忽略)

scope: 依赖的范围(这个重要。以下继续讲)

optional: 标记依赖是否可选

exclusions: 排除传递性依赖


依赖范围:

        说白了就是控制依赖与编译classpath,測试classpath,执行classpath的关系。

依赖范围參数:

        compile: 编译依赖范围,对于编译、測试、执行三种classpath都有效。默认情况使用该依赖范围。

        test: 測试依赖范围,仅仅对于測试classpath有效。仅仅有在编译測试代码及执行測试的时候才须要,eg:JUnit

        provided: 已提供依赖范围,仅仅对于编译和測试classpath有效。仅仅有在编译和測试项目的时候才须要。eg:servlet-api

        runtime: 执行时依赖范围。仅仅对于測试和执行classpath有效。仅仅有在执行測试或者执行项目的时候才须要,eg:JDBC

        system: 系统依赖范围。(到如今为止我还没实用过,忽略好了)

有图看的才爽:


posted @ 2016-02-20 18:59  mengfanrong  阅读(205)  评论(0编辑  收藏  举报