文档章节

对maven中scope理解

OSC屠夫
 OSC屠夫
发布于 2015/08/26 15:30
字数 377
阅读 255
收藏 2

scope的作用

compile

默认的scope,在部署的时候将会打包到lib目录下,项目在编译,测试,运行阶段都需要

    <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>4.1.4.RELEASE</version>
    </dependency>

provide

provide适合在编译和测试的环境,他和compile很接近,但是provide仅仅需要在编译和测试阶段,同样provide将不会被打包到lib目录下

eg:tomcat容器会提供servlet所以在部署的时候就不需要在加入了,可以避免jar包冲突

    <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
            <scope>provided</scope>
    </dependency>

runtime

这个scope,仅仅适用于运行环境,在编译和测试环境下都不会被使用

test

这个scope,仅仅适用于测试环境,在编译和运行环境下都不会被使用

eg:

    <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
    </dependency>

###system 跟provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它 eg:

   <dependency>
   <groupId>javax.sql</groupId>
   <artifactId>jdbc-stdext</artifactId>
   <version>2.0</version>
   <scope>system</scope>
   <systemPath>${java.home}/lib/rt.jar</systemPath>
  </dependency>

为什么需要区分这些scope

可以用来限制dependency的范围可以在不同的环境下打包不同的jar包,比如junit测试类的jar包不需要在编译运行的时候,就可以设置scope为test

** 欢迎加入193826252讨论 实现代码地址https://git.oschina.net/xForMe/fast_redis.git **

© 著作权归作者所有

共有 人打赏支持
OSC屠夫
粉丝 11
博文 32
码字总数 8390
作品 0
浦东
程序员
Maven依赖管理

其中一个Maven的核心特征是依赖管理。管理依赖关系变得困难的任务一旦我们处理多模块项目(包含数百个模块/子项目)。 Maven提供了一个高程度的控制来管理这样的场景。 传递依赖发现 这是很通...

park
2017/11/28
0
0
Dependency介绍

7.1 依赖的传递性 当项目A依赖于B,而B又依赖于C的时候,自然的A会依赖于C,这样Maven在建立项目A的时候,会自动加载对C的依赖。 依赖传递对版本的选择 假设A依赖于B和C,然后B依赖于D,D又依...

zh119893
2014/05/04
212
0
Maven百科 - 依赖管理中的scope

在Maven的依赖管理中. 目前有6种类型的scope他们分别是,compile,provided, test,runtime,system,import 在详细介绍他们之前,首要要理解一下,maven世界中的3种classpath和2种source(resour...

Garrry
2015/08/18
0
0
maven+jetty开发实例

最近准备离职了,等着到20号离开。所以在公司里面没有什么事情,自己研究了一下maven。以前对他的认识主要是依赖管理,而这几天的学习,对他的plugin机制影响特别深刻。特别的是jetty插件的使...

walb呀
2017/12/06
0
0
maven依赖总结

1.依赖元素 org.springframeworkspring-core${springframework.version}jarcompile groupId,必选,实际隶属项目 artifactId,必选,其中的模块 version必选,版本号 type可选...

lastsweetop
2013/01/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

angular指令监听ng-repeat渲染完成后执行自定义事件方法

今天工作中遇到需要用到ng-repeat遍历渲染完后执行某个操作,angular本身并没有提供监听ng-repeat渲染完成的指令,所以需要自己创建自定义指令。 在ng-repeat模板实例内部会暴露出一些特殊属...

孟飞阳
51分钟前
1
0
URLEncoder和URLDecoder

public static void main(String[] args) { String str1 = "https://test1-life.pingan.com/ilifecore/productMall/loading.html?productId=8000000241&channelCode=XCX00001&productCode=00......

鬼才王
今天
2
0
对象及变量的并发访问-第一篇

方法内部的变量为线程安全变量 “非线程安全”问题存在于“共享变量”中,如果是方法内部的私有变量,则不存在“非线程安全”问题,所得结果也就是“线程安全”的。 package chaprer3;/**...

简心
今天
1
0
程序媛眼中的程序猿原来是这样子的!

一直都想写一篇关于描述程序员的文章,但是一直没能开头,一来因为文笔不好,更主要的原因是貌似对程序员既熟悉又不熟悉,很怕写出来的是以偏概全,给大家造成对程序员的既定印象,不过,管他...

Java小铺
今天
1
0
bean标签

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 bean标签 bean标签中的init-method属性,该属性...

凯哥学堂
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部