Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在maven依赖关系树中,父依赖关系是否覆盖子依赖关系的范围?_Java_Maven - Fatal编程技术网

Java 在maven依赖关系树中,父依赖关系是否覆盖子依赖关系的范围?

Java 在maven依赖关系树中,父依赖关系是否覆盖子依赖关系的范围?,java,maven,Java,Maven,如果我从运行mvn dependency:tree中得到以下输出,那么引入测试或编译范围的jar是什么 [INFO] | +- io.springfox:springfox-swagger1:jar:2.5.0:test [INFO] | | +- io.springfox:springfox-schema:jar:2.5.0:compile [INFO] | | +- io.springfox:springfox-swagger-common:jar:2.5.0:compile 它

如果我从运行
mvn dependency:tree
中得到以下输出,那么引入测试或编译范围的jar是什么

[INFO] |  +- io.springfox:springfox-swagger1:jar:2.5.0:test
[INFO] |  |  +- io.springfox:springfox-schema:jar:2.5.0:compile
[INFO] |  |  +- io.springfox:springfox-swagger-common:jar:2.5.0:compile

它将是
测试
。但这并不是所有作用域对的一般规则。在您的情况下,这适用于:

对于
测试
范围,项目中将
运行时
编译
范围传递依赖项与
测试
范围一起拉入


在您的示例中,可以在

找到更多详细信息。所有三个依赖项都有效地限定了范围。根据
测试的任何可传递
编译
范围依赖项
范围依赖项变为
测试
范围:

每个作用域(导入除外)都以不同的方式影响可传递依赖项,如下表所示。如果将依赖项设置为左列中的范围,则该依赖项与跨顶行的范围的可传递依赖项将导致主项目中的依赖项与列在相交处的范围。如果未列出任何范围,则表示将忽略依赖项

            compile     provided        runtime     test
compile     compile     -               runtime     -
provided    provided    -               provided    -
runtime     runtime     -               runtime     -
test        test        -               test        -