maven中scope依赖范围与classpath的关系

依赖范围(Scope)

对于编译有效

对于测试有效

对于运行有效

例子

备注

compile

Y

Y

Y

spring-core

在编译,测试,运行时spring-core的jar都要加入到classpath中

test

-

Y

-

Junit

只在测试阶段junit的jar要加入到classpath中

provided

Y

Y

-

servlet-api

只在编译,测试中要加入servlet-api的jar,但运行时,容器会提供这个jar,所以运行期不要加入

runtime

-

Y

Y

jdbc驱动

在编译时,只需要 sun提供的jdbc接口即可,在测试和运行期则要这个驱动.

system

Y

Y

-

本地的,Maven仓库之外的类库文件

与provided依赖范围一样。但使用system范围的依赖必须通过systemPath元素显式指定依赖文件的路径。因为这个依赖不是由Maven仓库解析的,而且都与本机系统绑定,可能造成构建不可移植,慎用.




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值