maven的几种依赖关系

来源:互联网 发布:中国域名后缀 编辑:程序博客网 时间:2024/06/06 03:54

学习mavnen的时候有几种依赖关系

首先,说一下maven的依赖关系用来干什么?

就是用来控制编译、测试、运行三种classpath的关系

1、compile 的范围

当依赖的scope为compile的时候,那么当前这个依赖的包,会在编译的时候将这个依赖加入进来,

并且在打包的时候也会将依赖加入进去,说白了就是编译范围有效嘛,在编译和打包的时候会存储进去

2、provided的范围

当依赖的scope为provided的时候,在编译和测试的时候有效,在

执行进去打包成war包的时候不得加入,比如servlet-api,因为servlet-api

tomacat等web服务器中已经有的了,如果在打包进去,就会有冲突

 

3、test的范围

scope为test的时候,只指的是在测试范围有效,在编译与打包的时候不会使用

这个依赖

 

4、runtime的范围

scope为runtime的时候,在运行的时候才会依赖,编译不会依赖

5、system(系统范围)

system的依赖范围跟到provided类似,但是必须显式的提供一个对于本地系统

中jar文件路径,意思就是讲scope设置为system,就必须同时提供一个

systempath元素,一般好像不得用这个玩意儿

注意:在默认的情况下scope的范围是compile

 


1 0