maven scope 里面的runtime有什么用

maven scope 里面的runtime有什么用,
各位大神可以举个场景吗,看了很多地方都不知道这个到底什么用的。

0

5个回答

0

由于还在测试别的功能的阶段,还没有编写mysql,所以编译的时候不会用到这个包。但是生成Context上下文的时候会用到。 也就是说这个包mysql包编译的时候是用不到的,但是在运行的时候会用到。所以如果我们在package的时候没有将其打包到target中,运行时就会出错。所以要加上
runtime

如果不加,我试验过了。虽然加了这个依赖,但是由于编译的时候没有用到,那么生成的target下的lib中是没有对应的jar包的。

2
qq_26056255
一毛钱g 项目在运行期的时候才使用
12 个月之前 回复
StackTc
StackTc 那直接 不写runtime不行吗,为什么要写呢,就算编译的使用也给他用 又如何
12 个月之前 回复

This scope indicates that the dependency is not required for compilation, but is for execution. It is in the runtime and test classpaths, but not the compile classpath.

0
StackTc
StackTc 我知道,他在运行时才有用,但是不加这个 全部有用 也挺好的吧?
12 个月之前 回复

指的是直接在运行时所需要的包,而非在编译时等时候需要的包。

0
StackTc
StackTc 这个我知道,但是如果 在编译时也加了,也可以吧?有什么坏处吗
11 个月之前 回复

我的应用稍微复杂一点,在tomcat 上部署
<!--javax.servlet-->

javax.servlet
servlet-api
2.5
<!--因为provided表明该包只在编译和测试的时候用-->
provided

<!--javax.servlet end-->

            然后愉快的运行main方法报错了

            我能改为runtime吗,会与tomcat冲突吗?
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Maven POM中的各种scope的行为总结
compile:默认的scope。任何定义在compile scope下的依赖将会在所有的class paths下可用。maven工程会将其打包到最终的artifact中。如果你构建一个WAR类型的artifact,那么在compile scope下引用的JAR文件将会被集成到WAR文件内。provided:这个scope假定对应的依赖会由运行这个应用的JDK或者容器来提供。最好的例子就是serv...
Maven依赖中的scope详解
Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了。今天梳理一下maven的scope。scope的分类compile默认就是compile,什么都不配置也就是意味着compile。compile表示被依赖项目需要参与当前项目的编译,当然后续的测试,运
Maven学习之路--依赖范围scope
    &amp;lt;scope&amp;gt;&amp;lt;/scope&amp;gt;表示对于该包的依赖范围作用域,取值有:test、compile、provided、runtime。scope默认取值为compile。 &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;。test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖。 &amp;lt;scope&amp;gt;compile&amp;lt;/scope&amp;gt...
maven中scope的作用
scope的其他参数如下: compile 默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。适用于所有阶段,会随着项目一起发布provided 跟compile相似,但是表明了dependency 由JDK或者容器提供,例如Servlet AP和一些Java EE APIs。这个scope 只能作用在
Maven中scope的作用
scope的参数如下: compile 默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。适用于所有阶段,会随着项目一起发布。即依赖的项目会参与到当前项目的编译、运行、测试以及打包发布,是一个比较强的依赖范围。 provided 跟compile相似,但是表明了dependency 由JDK或者容器提供,例如Serv...
maven依赖scope配置项讲解
我们在使用Maven配置依赖项的时候,常常只会配置Maven的坐标以及版本信息就可以了,但我们看其他人的工程代码的时候常常会见到有个scope配置项,今天就来分别介绍下这个配置下几个类别的作用。 <scope>的分类一、complie编译域,这个是Maven中scope的默认值,我们平时不写scpoe配置时默认就是使用这个值。compile表示被依赖项目需要同当前项目编译时一起进行编译,项目测试期以
Maven中依赖的scope的依赖范围
在Maven中依赖的域有这几个:import、provided、runtime、compile、system、test 1compile 的范围 当依赖的scope为compile的时候,那么当前这个依赖的包,会在编译的时候将这个依赖加入进来,并且在打包(mvn package)的时候也会将这个依赖加入进去 意思就是:编译范围有效,在编译与打包时都会存储进去
pom文件的scope
maven依赖关系中Scope的作用Dependency Scope在POM 4中,中还引入了,它主要管理依赖的部署。目前可以使用5个值:* compile,缺省值,适用于所有阶段,会随着项目一起发布。 * provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 * t...
maven中dependencyManagement标签的简单使用(import scope依赖方式)
《maven应用实战》中描述的比较到位: 这里有个比较特别的元素,即dependencyManagement元素。根据前面的简介可以知道它是依赖管理元素,也就是说,用来管理依赖的。因为在实际项目中它有特殊意义,而且能够被继承。 一个Maven项目要直接引用某个依赖,都是在dependencies中使用dependency描述要引用依赖的坐标信息来完成的。这样就达到了一个要什么,就直接写什么的...
Maven依赖Scope标签用法
转自:http://blog.csdn.net/daihui05/article/details/7476976 在一个maven项目中,如果存在编译需要而发布不需要的jar包,可以用scope标签,值设为provided。如下:                     javax.servlet.jsp             jsp-api             2.1
maven中pom.xml 文件 的Scope的作用
Dependency Scope         中还引入了,它主要管理依赖的部署。目前可以使用5个值:      * compile,缺省值,适用于所有阶段,会随着项目一起发布。      * provided,类似compile,期望JDK、容器或使用者会提供这
maven dependency scope(转) 及 maven找不到lib目录下的包问题
一、maven dependency scope       * compile,缺省值,适用于所有阶段,会随着项目一起发布。     * provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。     * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。     * test,只在测试时使用,用于编译和运行测试代码。不会随...
maven中scope标签详解
前言最近在做itoo的pom优化工作,发现对于maven依赖管理中的scope标签还是有不明白的地方,所以今天就来总结一下这方面的知识,scope在maven的依赖管理中主要负责项目的部署maven的哲学在上次技术分享的时候也提到了:约定大于配置,所以在maven中,很多内容都有默认值,scope的默认值是compile,那么scope还能有哪些选项呢?scope的分类1.compile:默认值
Maven中的dependency的scope作用域详解
1、test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖 2、compile范围指的是编译范围有效,在编译和打包时都会将依赖存储进去 3、provided依赖:在编译和测试的过程有效,最后生成war包时不会加入,诸如:servlet-api,因为servlet-api,tomcat等web服务器已经存在了,如果再打包会冲突  4、runtime在运行的时候依赖,在编译的时候不依赖
Maven依赖scope属性详解--一个报错引发的问题
看不到我
关于maven依赖范围的个人理解
pom文件中有个元素是scope  表示构建的依赖范围 这本书原文片段是如下:         首先需要知道,Maven在编译项目主代码的时候需要使用一套classpath.  在执行测试的时候会使用另外一套classpath.实际运行Maven项目的时候,又会使用一套classpath 我的理解是,maven在编译项目代码的时候 会根据scope 编译需要引入的构件. 比如scope的值为
Spring-boot-devtools依赖 极大程度上方便了开发者
Devtools热部署spring-boot-devtools 在发现代码有更改之后,重新启动应用,但是速度比手动停止后再启动还要更快。依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifac
Maven的依赖管理中scope的设置
在Maven的依赖管理中,经常会用到依赖的scope设置。这里整理下各种scope的使用场景和说明,以及在使用中的实践心得。   scope的使用场景和说明 1.compile 编译范围,默认scope,在工程环境的classpath(编译环境)和打包(如果是WAR包,会包含在WAR包中)时候都有效。   2.provided 容器或JDK已提供范围,表示
Maven POM文件 Scope标签用法
在一个maven项目中,如果存在编译需要而发布不需要的jar包,可以用scope标签,值设为provided。如下:&amp;lt;dependency&amp;gt; &amp;lt;groupId&amp;gt;org.springframework.boot&amp;lt;/groupId&amp;gt; &amp;lt;artifactId&amp;gt;spring-boot-starter-test&amp;lt;/artifactId&amp;g...
maven的传递依赖与scope关系
maven的传递依赖与scope关系项目里有个common工程,其他模块会通过maven依赖方式引入,本想在common中依赖test用的jar,如junit,这样其他引入common就可以传递依赖common的test用jar,就不用自己再引入,反正都要用到。但是却发现scope为test的jar无法通过传递依赖,看了看maven官网对于传递依赖与scope的关系:https://maven.ap
Intellij集成maven引入jar包时scope设置的问题。
java.lang.NoClassDefFoundError: javax/servlet/ServletContext at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2531) at java.la...
Maven依赖中的scope作用域详解
Maven的一个哲学是惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile,项目中经常傻傻的分不清,直接默认了。今天梳理一下maven的scope。 scope的分类 compile 默认就是compile,什么都不配置也就是意味着compile。compile表示被依赖项目需要参与当前项目
关于maven项目中pom.xml依赖的scope的作用范围
我们在使用maven中的pom.xml文件经常用到dependency依赖,用于引入jar文件。其中 表明你要引入的jar是哪个组的。 表明在这个组当中唯一性。唯一的ID. 表明该jar的当前版本。 表明该jar文件的适用的作用范围。 现在主要来说明值的作用范围: compile:默认值,适用于所有阶段(表明该jar包在编译、运行以及测试中路径俊可见),并且会随着项目直接发布。
关于maven的生命周期provided
昨天闲来无聊研究了下 jersey的restful service。照着官网文档一步一步走没问题。然后自己尝试了下使用tomcat 建了个maven工程试了一下集成在web项目 可是一访问就报org.glassfish.jersey.servlet.ServletContainer类找不到。于是谷歌百度各种找原因 很多人遇到的这个问题的原因都说是在eclipse下编译的原因 说eclipse是in
spring boot 项目中使用<scope>provided</scope>打包成war到tomcat运行出现的问题总结
       大家知道 spring boot 项目是自带tomcat 的,但是我们有时候是需要把项目打包成war 然后放到独立的tomcat中运行的,这个时候我们就需要将它自带的tomcat给排除开,这时候我们就可以使用&amp;lt;scope&amp;gt;provided&amp;lt;/scope&amp;gt;来实现,我们在pom文件中这样写: &amp;lt;dependency&amp;gt; &amp;lt;groupId...
maven中scope常用的依赖范围
依赖范围就是用来控制依赖和三种classpath(编译classpath,测试classpath、运行classpath)的关系,Maven有如下几种依赖范围: compile:编译依赖范围。如果没有指定,就会默认使用该依赖范围。使用此依赖范围的Maven依赖,对于编译、测试、运行三种classpath都有效。典型的例子是spring-code,在编译、测试和运行的时候都需要使用该依赖。 te...
maven 中<dependency>标签中的 scope属性的作用
maven scope属性值设置含义 1、枚举各个属性值的含义 compile,缺省值,适用于所有阶段,会打包进项目。 provided,类似compile,期望JDK、容器或使用者会提供这个依赖。 runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 system,类似provided,需要显式提供包...
style标签里的scoped有什么作用
scoped
pom.xml中使用“import”的scope来解决Maven项目单继承问题
测试环境 maven 3.3.9想必大家在做SpringBoot应用的时候,都会有如下代码:[html] view plain copy &amp;lt;parent&amp;gt;      &amp;lt;groupId&amp;gt;org.springframework.boot&amp;lt;/groupId&amp;gt;      &amp;lt;artifactId&amp;gt;spring-boot-starter-parent&amp;lt;/a...
Maven的pom.xml中的scope节点和依赖传递
Maven工程的dependency(依赖)有一个范围属性,描述这个依赖的作用范围。有4个值,分别是: 1. test,指的是测试范围有效,编译和打包时都不会使用这个依赖 2. compile,指的是编译范围有效,编译和打包时都会使用这个依赖 3. provided,在编译和测试范围有效,但在打包时不会引入这个依赖。典型如servlet,因为tomcat默认提供了这个依赖,不需要额外引入。
Mavn执行测试时<scope>test</scope>导致错误
点击打开链接
tensorflow学习笔记(1): tf.name_scope的values参数是干嘛用的
 一、tf.name_scope的作用    在讲values的作用之前,我首先简单讲下tf.name_scope这个函数是用来干嘛的,已经了解tf.name_scope作用的读者可以直接跳过到第二部分。    tf.name_scope这个函数的目的是为了解决命名冲突问题,其接口如下:     tf.name_scope(name,default_name=None,values=None)...
人生无法避免之错------分析Maven的依赖
上一个Sprint总结会中,组内有人提出很多需求为什么会变化,这样搞的开发人员多累啊。为什么一开始就不采取最后决定的方式去做,还一定要折腾下呢。恰好最近看了小道消息一篇关于试错的推文,很是感触。 这点上我承认在沟通管理上没有及时发现组内成员的情绪,而且也没充分让开发人员参与到整体设计过程中,让他们缺少对整体的认识,也没很好的调动他们的积极性。 但是,就是在为什么一开始就不采取最后决定的方式去做...
Scope provided在IDEA中不起作用
短短两个星期中,我已经两次遇到maven的scope问题了。该长点记性了。 compile: This is the default scope, used if none is specified. Compile dependencies are available in all classpaths of a project. Furthermore, those dependenc
maven dependency依赖中scope标签的常用值
很多时候默认情况下我们在加入dependency依赖的时候会不写scope这个标签,这个时候的scope默认就是compile,即maven的scope默认的值就是compile。除了compile之外,scope还可以取值为provided,runtime,test,system和import。下面就分别说明这几个在使用时候的含义。 compile:这是maven中默认的值,在不明确指定sco
升级ant配置文件(关于copy maven依赖jar),如何优雅的自动copy scope为system的jar
升级ant配置文件(关于copy maven依赖jar),如何优雅的自动copy scope为system的jar   (注:这个文档需要 ant和maven的基础知识)   (不想看废话的,直接跳最后面看结论)   ant发布的时候copy lib,公司架构师以前是这样来的      &amp;lt;target name=&quot;copyLib&quot;&amp;gt;       &amp;l...
maven中的scope标签类别详解
scope的分类 1.compile:默认值 表示被依赖项目需要参与当前项目的编译,还有后续的测试,运行周期也参与其中,是一个比较强的依赖。打包的时候通常需要包含进去 2.test:依赖项目仅仅参与测试相关的工作,包括测试代码的编译和执行,不会被打包,例如:junit 3.runtime:表示被依赖项目无需参与项目的编译,不过后期的测试和运行周期需要其参与。与compile相比,跳过了编译而...
整理一下maven中的scope概念
Maven的一个哲学是 惯例优于配置(Convention Over Configuration), Maven默认的依赖配置项中,scope的默认值是compile 项目中经常傻傻的分不清,直接默认了。 今天梳理一下maven的scope。 scope的分类 compile 默认就是compile,什么都不配置也就是意味着compile。 compile表示被依赖项目需要参...
Maven的Scope区别笔记
依赖的Scope scope定义了类包在项目的使用阶段。项目阶段包括: 编译,运行,测试和发布。 分类说明 compile 默认scope为compile,表示为当前依赖参与项目的编译、测试和运行阶段,属于强依赖。打包之时,会达到包里去。 test 该依赖仅仅参与测试相关的内容,包括测试用例的编译和执行,比如定性的Junit。 runtime 依赖仅参与运行周期中的使用。一般...
maven中scope标签总结
Maven中scope标签的分类 1.  compile:&amp;lt;scope&amp;gt;标签的默认值,表示被依赖项目需要参与当前项目的编译,测试和运行周期,项目打包时会包含进去。2.  runtime:被依赖项目不参与项目的编译,不过后期的测试和运行周期需要其参与。与compile相比,跳过了编译而已。例如JDBC驱动,适用运行和测试阶段。所以在项目打包时会包含进去。3.  test:被依赖项目仅仅参...
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 python有什么用 学习数据库有什么用