maven读书笔记(二)maven依赖范围

. maven在不同的时期诸如:编译、测试和运行会使用不同的classpath,maven依赖范围就是用来控制着三中classpath的关系的,maven有如下依赖范围:


1. compile

编译依赖范围,如果不指定,默认会使用该依赖范围。使用此依赖范围的依赖,会在三个classpath中都有效。


2. test

测试依赖范围,使用此依赖范围的依赖,只会在测试的classpath中生效,典型的如junit。


3. provided

已提供依赖范围,使用此依赖范围的依赖,会在编译和测试的classpath生效。该依赖范围表示,运行容器已提供该依赖,只需在编译和测试期间保证测试通过即可,典型的依赖如sevlet-api。


4. runtime

运行是依赖范围,使用此依赖范围的依赖,只会对测试和运行时的classpath生效。典型的例子是jdbc,项目主代码编译时只需jdk提供的jdbc接口。


5. system

系统依赖范围,该依赖和三种classpath的关系和provided相同。但是使用system依赖范围的依赖必须通过systePath元素显示的制定依赖文件的路径。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章