compile(编译范围)

compile是默认的范围;如果没有提供一个范围,那该依赖的范围就是编译范

围。编译范围依赖在所有的classpath中可用,同时它们也会被打包。

provided(已提供范围)

provided依赖只有在当JDK或者一个容器已提供该依赖之后才使用。例如,如果

你开发了一个web应用,你可能在编译classpath中需要可用的Servlet API来编

译一个servlet,但是你不会想要在打包好的WAR中包含这个Servlet API;这个

Servlet API JAR由你的应用服务器或者servlet容器提供。已提供范围的依赖在

编译classpath(不是运行时)可用。它们不是传递性的,也不会被打包。

runtime(运行时范围)

runtime依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如,你

可能在编译的时候只需要JDBC API JAR,而只有在运行的时候才需要JDBC驱动实

现。

test(测试范围)

test范围依赖 在一般的 编译和运行时都不需要,它们只有在测试编译和测试运

行阶段可用。

system(系统范围)

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

JAR文件的路径。这么做是为了允许基于本地对象编译,而这些对象是系统类库

的一部分。这样的构件应该是一直可用的,Maven也不会在仓库中去寻找它。。如

果你将一个依赖范围设置成系统范围,你必须同时提供一个systemPath元素。注

意该范围是不推荐使用的(你应该一直尽量去从公共或定制的Maven仓库中引用

依赖)。

最新文章

  1. hdu 5253 最小生成树
  2. iOS (catagroy)类别
  3. ASP.NET实现折线图的绘制
  4. 数据库字段出现科学计数法e+的情况分析
  5. 车的UML图
  6. 利用SVNKit进行版本库的树的导出
  7. ASP.NET MVC 5 WEB API 用户验证
  8. ViewPager—01引导页的制作
  9. LeetCode - 601. Human Traffic of Stadium
  10. 那什么时候会触发BFC呢?块级格式化上下文
  11. 思科模拟器GNS3-2.1.8安装笔记 (适用于版本2.0.3以上的GNS3)
  12. NumPy 中的集合运算
  13. Java的两个实验程序
  14. Linux下用ifconfig命令设置IP、掩码、网关
  15. java代码示例(4—1(作业))
  16. maven项目提示web.xml is missing或红色感叹号
  17. zookeeper超时:Unable to connect to zookeeper server within timeout: 5000
  18. .NET Out Of Memory Exception - Used 1.3GB but have 16GB installed
  19. JS弹出层遮罩,隐藏背景页面滚动条细节优化
  20. as3 判断移动方向

热门文章

  1. C# 中的 Async 和 Await
  2. linq的decimal类型保存到数据库只保存到小数点后两位的问题
  3. C# Socket服务端与客户端通信(包含大文件的断点传输)
  4. Andorid API Package ---> android.accessibilityservice
  5. CentOS 访问控制列表(tcp wrappers)
  6. [Leetcode] Binary tree postorder traversal二叉树后序遍历
  7. BZOJ:2460[BeiJing2011]元素 (异或基+贪心)
  8. Apache Flume - File通道设计
  9. java入门实现转换
  10. Centos下iptables常用命令