现在的位置: 首页 > 综合 > 正文

Maven依赖范围

2018年05月16日 ⁄ 综合 ⁄ 共 770字 ⁄ 字号 评论关闭

先看看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: 系统依赖范围。(到现在为止我还没有用过,忽略好了)

有图看的才爽:

【上篇】
【下篇】

抱歉!评论已关闭.