" + - "之间有什么区别?和" \ - "在maven依赖树输出?

时间:2015-11-30 19:48:26

标签: maven dependency-management maven-dependency-plugin maven-dependency

如果我们考虑以下示例," + - "之间的区别是什么?和" \ - "符号以及它们意味着什么?

[INFO] [dependency:tree]
[INFO] org.apache.maven.plugins:maven-dependency-plugin:maven-plugin:2.0-alpha-5-SNAPSHOT
[INFO] +- org.apache.maven.reporting:maven-reporting-impl:jar:2.0.4:compile
[INFO] |  \- commons-validator:commons-validator:jar:1.2.0:compile
[INFO] |     \- commons-digester:commons-digester:jar:1.6:compile
[INFO] |        \- (commons-collections:commons-collections:jar:2.1:compile - omitted for conflict with 2.0)
[INFO] \- org.apache.maven.doxia:doxia-site-renderer:jar:1.0-alpha-8:compile
[INFO]    \- org.codehaus.plexus:plexus-velocity:jar:1.1.3:compile
[INFO]       \- commons-collections:commons-collections:jar:2.0:compile

4 个答案:

答案 0 :(得分:14)

这些符号没有任何意义,它们只是用来更好地读取树的输出!

这是一个更复杂的输出,可以更好地了解它在spring-webmvc依赖项上的作用:

[INFO] +- org.springframework:spring-webmvc:jar:4.2.2.RELEASE:compile
[INFO] |  +- org.springframework:spring-beans:jar:4.2.2.RELEASE:compile
[INFO] |  +- org.springframework:spring-context:jar:4.2.2.RELEASE:compile
[INFO] |  |  \- org.springframework:spring-aop:jar:4.2.2.RELEASE:compile
[INFO] |  |     \- aopalliance:aopalliance:jar:1.0:compile
[INFO] |  +- org.springframework:spring-core:jar:4.2.2.RELEASE:compile
[INFO] |  |  \- commons-logging:commons-logging:jar:1.2:compile
[INFO] |  +- org.springframework:spring-expression:jar:4.2.2.RELEASE:compile

将依赖关系树视为级别:第一级对应于直接依赖关系;第二级对应于那些直接依赖项的传递依赖性等。

基本上,如果同一个工件在同一级别上存在多个依赖关系,则会显示+-,否则会显示\-,表示"结束&# 34;树的(即通​​向叶子的路径)。

答案 1 :(得分:10)

\-符号表示此节点是为当前父级列出的最后一个兄弟

答案 2 :(得分:3)

加号表示同一级别的多个节点,而-符号表示该级别的一个节点。

因此,在您的情况下,maven-dependency-plugin+符号)在第一级具有传递依赖maven-reporting-impldoxia-site-renderer,然后maven-reporting-impl只有(- commons-validator符号)class SessionsController < ApplicationController before_action :clear_devise_session, only: [:new, :destroy] private def clear_devise_session session['devise.facebook_data'] = nil end end 作为直接传递依赖等等。

答案 3 :(得分:1)

对于同一级别的多个依赖项,\- 将显示该级别的最后一个依赖项,而 +- 将显示该级别的所有其他依赖项。